我有以下条件,即如果$img[$i]
为true
,则会在代码中创建一个图片:
<?= !$img[$i] ? "" : "<div class=\"image\"> <img src=\"/images/1.gif\" /></div>"; ?>
我想添加另一个条件,即如果$center=true
,则会将一个名为centered
的类添加到图像中,因此最终代码将如下所示:
<div class="image"><img src="images/1.gif" class="centered"/></div>
所以基本上这意味着将另一个条件放在上一个条件中,但我不能在代码中间添加!$center ? '' : ' class="centered"'
。
我怎样才能做到这一点?
答案 0 :(得分:1)
是的,你可以'把它放在中间':
<?= $img[$i] ? '<div class="image"> <img src="/images/1.gif"'.($center ? ' class="centered"' : '').' /></div>' : ''; ?>
但那很难看,你不同意吗?我现在假设你输出HTML代码是什么。然后我可以将您的代码重写为:
if ($img[$i]) {
echo '<div class="image">'.PHP_EOL;
echo ' <img src="/images/1.gif"'.($center ? ' class="centered"' : '').' />'.PHP_EOL;
echo '</div>'.PHP_EOL;
}
我觉得它看起来更好,因为它更容易阅读。