[英]Unexpected close parenthesis in ternary operator PHP
我有一个三元运算符,它将回显HTML标记的样式。 我尝试删除或添加括号,但是仍然存在错误。
foreach( $result as $row ) {
$us = $row['username'];
echo '<div id="msg_guest" style="'.($us != 'Admin' ? ($us != 'inTELLigence' ? 'float: right; background-color: #51b8c1':'float: left;')).'"><div id="usr" style="'.($us != 'Admin' ? ($us != 'inTELLigence'? 'background-color: #67d5de':'background-color: #e6898a')).'"><div id="user">'.$row['username']. '</div><div id="time">'.$row['time_now'].'</div></div><p id="msg"> '.$row['message'].'</p></div><br />';
}
您应该避免嵌套三元运算符,因为它会很快变得混乱。
但是,这种情况下的问题是因为父三元语句存在语法错误。 他们没有其他定义。
例如,您需要以结尾:
$trueBoolean ? 'true condition' : 'false condition';
尝试这样的事情。
foreach( $result as $row ) {
$us = $row['username'];
$html = '';
if ($us != 'Admin') {
$html = $us != 'inTELLigence' ? 'float: right; background-color: #51b8c1' : 'float: left;';
}
$html2 = '';
if ($us != 'Admin') {
$html2 = $us != 'inTELLigence' ? 'background-color: #67d5de' : 'background-color: #e6898a';
}
echo '<div id="msg_guest" style="'. $html .'"><div id="usr" style="'. $html2 .'"><div id="user">'.$row['username']. '</div><div id="time">'.$row['time_now'].'</div></div><p id="msg"> '.$row['message'].'</p></div><br />';
}
您还没有完全关闭条件,您的第一个语句在left;'))
您实际上需要在left;') : '')
更换
echo '<div id="msg_guest" style="'.($us != 'Admin' ? ($us != 'inTELLigence' ? 'float: right; background-color: #51b8c1':'float: left;')).'"><div id="usr" style="'.($us != 'Admin' ? ($us != 'inTELLigence'? 'background-color: #67d5de':'background-color: #e6898a')).'"><div id="user">'.$row['username']. '</div><div id="time">'.$row['time_now'].'</div></div><p id="msg"> '.$row['message'].'</p></div><br />';
与
echo '<div id="msg_guest" style="'.( $us != "Admin" ? ($us != "inTELLigence" ? "float: right; background-color: #51b8c1":"float: left;") : '' ).'"><div id="usr" style="'.( $us != "Admin" ? ($us != "inTELLigence" ? "background-color: #67d5de":"background-color: #e6898a") : '').'"><div id="user">'.$row['username']. '</div><div id="time">'.$row['time_now'].'</div></div><p id="msg"> '.$row['message'].'</p></div><br />';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.