IF何时变得比SWITCH好

时间:2015-04-17 15:38:19

标签: php performance

我正在开发一个API,允许开发人员发布一组参数,这些参数最多可以包含100个不同的参数。我不确定他们通常会使用多少(或哪些),但之前的经验让我相信它只会是少数。

现在我遇到了一个SPEED问题(因为我预计每秒会有很多API调用):如果我使用switch语句和if / elseif语句,它会有所不同吗?

因为出于可读性目的,我显然更愿意做以下事情:

foreach ($_REQUEST as $key=>$value) {
switch ($key) {
    case 'par1':
        // do something
        break;
    case 'par2':
        // do something else
        break;
    case 'par3':
        // etc etc

如果我能坚持这一点,我的代码将更具可读性,并且在不明显错误的情况下添加/删除参数会更容易。

PS - 我已经无法在SO上找到这样的帖子了,除了this one about C++

编辑:我现在在SO(IF vs SWITCH)上发现了另一篇文章,比较了此背景下的FEW语句。基准测试表示差别不大(虽然它仍然是30%),但我仍然想知道在100个参数的情况下会发生什么。

1 个答案:

答案 0 :(得分:0)

性能差异很小,我不会担心它而只是转换。

请参阅评论中提到的帖子的基准:What is the difference between Switch and IF?

相关问题