我在PHP讀了一下在this article,我停了一段時間來考慮他的抱怨之一。我無法弄清楚PHP到底是如何實現的。
與其他語言不同(字面意義上的)帶有類似的運算符,?:是左邊關聯。所以這個:
$arg = 'T'; $vehicle = (($arg == 'B') ? 'bus' : ($arg == 'A') ? 'airplane' : ($arg == 'T') ? 'train' : ($arg == 'C') ? 'car' : ($arg == 'H') ? 'horse' : 'feet'); echo $vehicle;
打印馬。
PHP遵循什麼邏輯路徑導致'horse'
被分配到$vehicle
?
http://php.net/manual/en/language.operators.comparison.php三元運算符實施例#3 –
三元運算是巨大的,但在PHP中,我強烈建議您對它們應用大量的括號以明確您的期望行爲。 – Jazz