$odd= true;
echo ($odd == true) ? '<tr class="odd_row">' : '<tr class="even_row">';
$odd = !$odd;
请问有人能解释一下这段代码吗?
$odd= true;
echo ($odd == true) ? '<tr class="odd_row">' : '<tr class="even_row">';
$odd = !$odd;
请问有人能解释一下这段代码吗?
该表达式[a] ? [b] : [c]
称为三元运算符。它与此功能相同:
function ternary($a, $b, $c) {
if ($a)
return $b;
else
return $c;
}
除了三元运算符的参数是惰性求值的(即只有一个[b]
和[c]
实际执行)。
$odd = !$odd
在和$odd
之间切换值。true
false
该代码可能在循环中使用,该循环打印交替具有类odd_row
和的表格行,even_row
然后可以使用 CSS 对其进行不同的样式设置。
这表示
if ($odd == true){
echo '<tr class="odd_row">';
}else{
echo '<tr class="even_row">';
}
并且被称为三元运算符
然后被$odd = !$odd;
这个变量的值“翻转”。我想这样做是为了使下一行成为“偶数”。
这是将$odd
变量设置为布尔值true
$odd= true;
这使用所谓的三元运算符来打印出一个字符串。如果$odd
为真,它将打印第一位,如果不是,则打印第二位。正如您之前设置$odd
的那样,它总是会打印第一位
echo ($odd == true) ? '<tr class="odd_row">' : '<tr class="even_row">';
这设置$odd
为!
(不)$odd
所以将布尔值反转为假 $odd = !$odd;
很抱歉字面上的解释,但我想彻底