if 语句可以在串联中使用吗?
在提供的 PHP 代码中,尝试在串联中使用 if 语句没有成功。这种方法可以使用吗,还是语法错误?
答案:
不可以,不能在字符串连接中直接使用 if 语句。 if 语句是一个独立的语句,不能嵌入到另一个语句中。
相反,可以使用简写三元运算符来有条件地输出字符串的特定部分。
<code class="php">$given_id = 1; while ($row = mysql_fetch_array($sql)) { $display = '<a href="' . $row['info'] . '" onMouseOver="' . ($row['type'] == "battle" ? 'showB' : 'showA')() . ';"> <div class="' . $row['type'] . "_alert\" style=\"float:left; margin-left:-22px;\" id=\"" . $given_id . '"</div></a>'; }</code>
这里,三元运算符根据$row['type']的值给$display分配不同的值。
对于复杂的条件,还可以使用嵌套三元运算符:
<code class="php">$i = 0; $j = 1; $k = 2; $result = 'Greater One is' . $i > $j ? ( $i > $k ? 'i' : 'k' ) : ( $j > $k ? 'j' :'k' ) . '.';</code>
以上是可以在 PHP 字符串连接中使用 if 语句吗?的详细内容。更多信息请关注PHP中文网其他相关文章!