Php 简写if-else语句不正确

Php 简写if-else语句不正确,php,codeigniter,Php,Codeigniter,我有以下三元运算符: <?php (strcmp($activetab,'profile') == 0 ? echo "active" : ''); ?> 不幸的是,它没有按预期工作。如果条件为真,我希望active将被回响,否则什么也没有 我做错了什么?现在试试 <?php echo (strcmp($activetab,'profile') == 0) ? "active" : ''; ?> 只需像这样更改代码: <?php echo (strcm

我有以下三元运算符:

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

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

我做错了什么?

现在试试

<?php echo (strcmp($activetab,'profile') == 0) ?  "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”:“)

自由地恢复了;不知道为什么其他人批准了它。@ClassStacker-他们看到有人拿着金徽章,认为这是一个有效的编辑。有些人需要学习更多的阅读…你只是错过了回应你的结果。