如果我在我的PHP中使用了很多三元條件運算符,它會對我的腳本的性能產生不利影響嗎?如果有的話,什麼是很多三元條件的性能影響?
例如爲:
$var = (cond)?"success":"error";
if(cond) success else error
我更喜歡使用三元條件句,因爲它使代碼看起來更乾淨和更小的。
如果我在我的PHP中使用了很多三元條件運算符,它會對我的腳本的性能產生不利影響嗎?如果有的話,什麼是很多三元條件的性能影響?
例如爲:
$var = (cond)?"success":"error";
if(cond) success else error
我更喜歡使用三元條件句,因爲它使代碼看起來更乾淨和更小的。
您能爲我們定義內聯嗎?使用:
$var = (cond)?"success":"error";
或
if(cond) {
$var = "success";
}else{
$var = "error";
}
應該不會給你任何noticable性能差異。但是,如果你打算在PHP中使用內聯HTML:
$var = "success"
echo "<p>$var</p>";
我建議檢出模板系統,比如smarty。
簡短的答案取決於它,但通常你不會注意到性能的差異。通常,如果測試條件是少量數據,則性能可能幾乎相同。但是對於更大的數據集,使用三元運算符可以看到性能較低。
我建議使用它,如果這就是你喜歡的代碼,只關心你自己的代碼是否真的開始爬行。
鏈接後這樣做性能測試:http://fabien.potencier.org/article/48/the-php-ternary-operator-fast-or-not
如果我在PHP中使用了大量的三元條件的經營者,將它 不利我的腳本的性能影響?
號
$var = (cond)?"success":"error";
這是一個三元條件(或 「內聯如果」)...
if(cond) success else error
..但是,是一個正常的if
- else
聲明,缺乏換行符和大括號。它的功能上等同於:
if (cond) {
success
}
else {
error
}
我更喜歡使用三元條件句,因爲它使代碼看起來 更清潔和更小的。
不一定。所以要注意你在風格決定中做出的總體概括。
清潔和小代碼每次都丟失可維護和可讀的代碼。 –
可能重複[To ternary or not to ternary?](http://stackoverflow.com/questions/160218/to-ternary-or-not-to-ternary) – animuson