if语句的速记不正确

时间:2013-04-18 12:22:06

标签: php codeigniter

我有以下三元运算符:

<?php (strcmp($activetab,'profile') == 0 ? echo "active" : '');  ?>

不幸的是,它没有按预期工作。我希望如果条件成立,active将被回应,否则什么也没有。

我做错了什么?

3 个答案:

答案 0 :(得分:5)

立即尝试

<?php echo (strcmp($activetab,'profile') == 0) ?  "active" : '';  ?>

答案 1 :(得分:3)

$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" : '');

答案 2 :(得分:1)

只需更改您的代码:

<?php echo (strcmp($activetab,'profile') == 0 ?  "active" : '');  ?>