PHP三元运算符给出了意想不到的T_echo

时间:2012-12-25 09:00:37

标签: php echo ternary-operator

我的三元组正在返回一个错误。我是否忘记了将一些PHP三元组与echos一起使用的基本规则或怪癖?

isset($tag) ? 
    echo '<a href="#">' . $tag['firstname'] . '</a>' : null;

上面的三元组返回以下错误:

Parse error: syntax error, unexpected T_ECHO in /classes/Photo.php on line 216

2 个答案:

答案 0 :(得分:17)

你应该这样写:

echo (isset($tag) ? '<a href="#">' . $tag['firstname'] . '</a>' : '');

答案 1 :(得分:2)

当您需要在表达式中显示文本时,请使用print()而不是echo。