Php 在echo语句中添加三元运算符
我在php脚本中使用了这个echo语句,效果很好Php 在echo语句中添加三元运算符,php,Php,我在php脚本中使用了这个echo语句,效果很好 echo "<li class=\"ui-state-default\" id=ID_$this->id>$this->course_name <i class=\"fa fa-bars\" style=\"font-size:0.7em;color:#cccccc;float: right;\"></i> </li>"; 本质上,在IF条件下将颜色变成红色…现在除了代码之外,这不
echo "<li class=\"ui-state-default\" id=ID_$this->id>$this->course_name <i class=\"fa fa-bars\" style=\"font-size:0.7em;color:#cccccc;float: right;\"></i> </li>";
本质上,在IF条件下将颜色变成红色…现在除了代码之外,这不会产生任何结果…有人知道这应该如何恰当地进入echo语句吗?谢谢这不是一个有效的PHP语句:
style="color:red"
你可能想把整件事变成一根绳子:
($benchmark>$thisUser) ? 'style="color:red"' : ''
我不会在回声声明中加入三元。只需使用一个变量
$liStyle = ($benchmark>$thisUser) ? 'style="color:red"' : '';
echo "<li class=\"ui-state-default\" $liStyle id=ID_$this->id>$this->course_name <i class=\"fa fa-bars\" style=\"font-size:0.7em;color:#cccccc;float: right;\"></i> </li>";
$liStyle=($benchmark>$thisUser)?'style=“color:red”:“”;
echo“id>$this->course\u name ”;
我建议您将代码分块剪切,以使其更具可读性(利用HTML将多个空格和/或换行符视为唯一的空格这一事实)
另外,正如其他人所建议的,对于这种特殊情况,您最好分离三元运算,但为了可读性
$color = $benchmark->$thisUser ? '#cccccc' : 'red';
echo "
<li class='ui-state-default' id='ID_$this->id'>
$this->course_name
<i class='fa fa-bars' style='font-size:0.7em; float: right; color:$color;'></i>
</li>
";
$color=$benchmark->$thisUser?“#"中交":"红",;
回声“
$this->course\u name
";
如果在echo中包含三元操作,它也可以工作,但看起来不那么可读
echo "
<li class='ui-state-default' id='ID_$this->id'>
$this->course_name
<i class='fa fa-bars' style='font-size:0.7em; float: right; color:" . ($benchmark->$thisUser ? '#cccccc' : 'red') . ";'></i>
</li>
";
echo”
$this->course\u name
";
请注意,在这种情况下,您必须将三元运算包装在括号之间,否则连接将中断。对……谢谢……这是我写下它时的错误。很高兴提供帮助。那么你能考虑接受我的答案吗?
echo "
<li class='ui-state-default' id='ID_$this->id'>
$this->course_name
<i class='fa fa-bars' style='font-size:0.7em; float: right; color:" . ($benchmark->$thisUser ? '#cccccc' : 'red') . ";'></i>
</li>
";