可能顯示的文件:
quick php syntax question
Reference - What does this symbol mean in PHP?是什麼?簽署此聲明?
$ row_color =($ ROW_COUNT%2)? $ color1:$ color2;
可能顯示的文件:
quick php syntax question
Reference - What does this symbol mean in PHP?是什麼?簽署此聲明?
$ row_color =($ ROW_COUNT%2)? $ color1:$ color2;
它擴展IF語法
它等於
if ($row_count % 2)
$row_color = $color1;
else
$row_color = $color2;
這是一個有條件的IF語句。如果rowcount是偶數,則顯示一種顏色,如果是奇數,則顯示其他顏色。
他們設置交替的行顏色。
問號和冒號是什麼使它成爲IF。
條件出現在問號(rowcount是偶數)之前。
問號後面的第一項是「then」,即如果條件爲真,該怎麼辦。
冒號後面的項目是「else」,也就是說,如果條件不成立,該怎麼辦。
許多人喜歡這種語法,因爲它的簡潔。但是,正如你發現的那樣,當你第一次遇到它時,這是一個真正的難題,對谷歌來說很難。
這稱爲Ternary運營商。基本上它是檢查是否row_count
是奇數然後分配給row_color
或color1
其他color2
這是一個三元運算符。按照PHP manual:
表達式(expr1)? (expr2): (expr3)如果expr1 的計算結果爲TRUE,則計算爲expr2;如果expr1 的計算結果爲FALSE,則expr3計算爲expr2。
換句話說:
$variable = (IF THIS EVALUTES TO TRUE) ? (ASSIGN THIS) : (IF NOT, ASSIGN THIS);
這就是所謂的一個三元運算符。說明可以在這裏找到:http://php.net/manual/en/language.operators.php
這就是所謂的Ternary operation
這是下面的代碼的短手錶示:
if($row_count % 2) {
$row_color = $color1;
}
else {
$row_color = $color2;
}
這是您的原代碼,有評論說:
$row_color = ($row_count % 2) ? // Performs logical expression.
$color1 // If logic is true set original variable to this
: $color2; // Else set original variable to this.
關於三元操作的PHP文檔:http://php.net/manual/en/language.operators.php
可能有100萬個現有問題的重複,例如[快速php語法問題] – meagar 2011-01-13 15:39:12
讓我們來看看:[什麼是?]在PHP中5.3?](http://stackoverflow.com/questions/2153180/what-is-in-php-5-3),[什麼是PHP?:操作符被調用,它有什麼作用?](http:// stackoverflow.com/questions/1080247/what-is-the-php-operator-called-and-what-does-it-do),[?:PHP中的運算符](http://stackoverflow.com/questions/1993409/operator-php)和[我可以在哪裏閱讀關於完成的條件?和:](http://stackoverflow.com/questions/4055355/where-can-i-read-about-conditionals-done-with-and)。另請參閱:http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in-php) – ircmaxell 2011-01-13 15:40:02