性能主题:如果有多个||或转换案例?

时间:2015-08-03 08:40:10

标签: php performance if-statement switch-statement

我有一个小脚本来根据用户的来源格式化价格 我现在的问题是明智的表现是什么?

function FormatPrice($Price) {
        $Locale = $this->Locale;
        switch ($Locale) {
        case "en-GB":
        case "en-IE":
        case "he-IL":
        case "mt-MT":
        case "zh-CN":
            return number_format($Price, 2, '.', ',');
        default:
            return number_format($Price, 2, ',', '.');

        }
    }

function FormatPrice($Price) {
        $Locale = $this->Locale;
        if ($Locale === "en-GB" || $Locale === "en-IE" || $Locale === "he-IL" || $Locale === "mt-MT" || $Locale === "zh-CN") {
            return number_format($Price, 2, '.', ',');
        } else {
            return number_format($Price, 2, ',', '.');
        }
    }

1 个答案:

答案 0 :(得分:1)

使用以下链接了解更多信息 似乎编译器在优化switch语句方面比if语句更好。 Case vs If Else If: Which is more efficient?