何时使用print()与关闭php


When to use print() vs close php

在结合HTML和PHP的同时,我希望在其中一种方法中有一些最佳实践。

例如,不确定在模板中这样做是否正确:

if ($i == 0) { ?>
    <li role="presentation" class="active">
<?php } else { ?>
    <li role="presentation">
<?php } ?>

或者更好:

if ($i == 0) {
    print('<li role="presentation" class="active"');
} else {
    print('<li role="presentation">');
}

感谢

这实际上只是个人偏好的问题。答案没有对错之分。

我更喜欢的另一个选项是在脱离PHP并在标记和服务器代码之间切换时使用以下选项:

<?php if ($i == 0) : ?>
<li role="presentation" class="active">
<?php else : ?>    
<li role="presentation">
<?php endif ?>

或者,你可以使用三元运算符来保持事物的超级清洁:

<li role="presentation"<?php echo ($i == 0) ? ' class="active"' : '' ?>>

如果你想要一个干净的方法,你可以试试这个:

<li role="presentation" <?php if ($i == 0) { echo 'class="active"'; } ?>>

如果条件返回true,则li元素将被分配class属性'active'。

EDIT:在这种情况下,不需要三元运算符,因为如果条件返回true,则不会设置属性。