我有以下三元运算符:
<?php (strcmp($activetab,'profile') == 0 ? echo "active" : ''); ?>
不幸的是,它没有按预期工作。我希望如果条件为真,那active
将得到回应,否则什么都没有。
我究竟做错了什么?
我有以下三元运算符:
<?php (strcmp($activetab,'profile') == 0 ? echo "active" : ''); ?>
不幸的是,它没有按预期工作。我希望如果条件为真,那active
将得到回应,否则什么都没有。
我究竟做错了什么?
现在试试
<?php echo (strcmp($activetab,'profile') == 0) ? "active" : ''; ?>
$comp ? $a : $b
语法并不是真正的简写
if ( $comp ) { $a; } else { $b }
它实际上是这样的:
function ($comp, $a, $b) { if ( $comp ) { return $a; } else { return $b; } }
所以确实尝试echo (strcmp($activetab,'profile') == 0 ? "active" : '');
只需像这样更改您的代码:
<?php echo (strcmp($activetab,'profile') == 0 ? "active" : ''); ?>