很多PHP标签的打开/关闭

时间:2013-11-15 10:59:43

标签: php

我一直想知道:有一个大的开放式PHP(即模板)会受伤吗?

澄清:

 <html>
    <?php echo $test; ?>
    <body <?php echo $test2; ?>>
    <table>
        <?php foreach ($rows as $row): ?>
        <tr>
            <td><?php echo $row['cell1']; ?></td>
            <td><?php echo $row['cell1']; ?></td>
            <td><?php echo $row['cell1']; ?></td>
            <td><?php echo $row['cell1']; ?></td>
            <?php echo $row['added cells']; ?>
        </tr>
        <?php endforeach; ?>
    </table>
    <?php echo $someMorePhp; ?>
    <div>
        <?php /*do some more php stuff */ ?>
    </div>
    etc etc
    etc

或者是否可取。即

<html>
<php echo $test.'<body'.$test2; ?>>
<table>
    <?php foreach ($rows as $row) {
    echo '<tr>
        <td>'.$row['cell1'].'</td>
        <td>'.$row['cell2'].'</td>
        <td>'.$row['cell3'].'</td>
        <td>'.$row['cell4'].'</td>
        <td>'.$row['cell1'].'</td>
        '.$row['added cells'].'
    <tr>';
    }
</table>
// etc

我知道这可能看起来像微优化等。要清楚我正在寻找一个经验法则而不是一个特定的用例...在单个脚本运行期间是否会影响进入和退出php引擎......

1 个答案:

答案 0 :(得分:0)

不,这没问题,在这种情况下你应该总是选择更好的可读性。

另外考虑一下如果可能的话激活短标签(但要注意,那些可能会对评论中所述的XML sytnax产生一些副作用/问题)

<? if ($bool) { ?>
    <?= $myVarThatIWantToOutput ?>
<? } ?>

或者考虑使用像smarty或twig这样的模板引擎,这会限制你以某种方式强制拆分问题,使一些东西更容易(也更易读)并允许缓存已编译的模板以确保你仍然获得正确的速度。