【问题标题】:PHP coding convention and efficiencyPHP编码约定和效率
【发布时间】:2011-08-28 09:38:44
【问题描述】:

考虑

<a href="<?php echo $url;?>"><?php echo $name;?></a>

比较

<?php echo "<a href=\"{$url}\">{$name}</a>";?>

然后在同一页面上考虑数百个不同变体。

一种或另一种约定是否会影响 以任何方式表现还是只是偏好问题?

【问题讨论】:

    标签: php performance


    【解决方案1】:

    这个问题之前已经很好地解决了:Opening/closing tags & performance?

    简而言之,答案如下:

    3 simple rules for you to get it right:
    
     - No syntax issue can affect performance. Data manipulation does.
     - Speak of performance only backed with results of profiling.
     - Premature optimization is the root of all evil
    

    【讨论】:

    • +1 表示“过早优化”。但这不仅仅是语法问题,因为 php 和 inline-html 之间有几个上下文切换。
    • 我注意到我的问题可能是重复的,我只是重新提出了不同的问题,但没有找到。也许它应该被删除。
    【解决方案2】:

    如果调用不同的函数或占用更多空间(因此脚本在物理上占用更多内存空间),某些约定可能会影响性能 - 但这完全可以忽略不计,只是一个偏好问题。如果您将它与 Smarty 或其他模板系统进行比较 - 另一方面会影响性能。

    【讨论】:

      【解决方案3】:

      单引号 (') 比双引号 (") 更快,因为解析器不会尝试在字符串中查找变量。
      所以,我认为第一个脚本是最好的方法。

      【讨论】:

        【解决方案4】:

        第一个示例会稍微快一点,因为使用 PHP 来回显内容比仅使用原始 html 显示文本会增加一个微小的延迟。 但是,这种差异根本不明显,我建议您选择您喜欢的任何一种。

        【讨论】:

          【解决方案5】:

          可能会影响性能,但这绝不应该是影响您如何编写好的可读代码的关键。差异可以忽略不计。

          只要我的 2 美分:如果我有大量的 html 并且我只想集成一些变量,那么第一个更具可读性。如果它只有一行或其他内容,则第二个更具可读性。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-03-06
            • 1970-01-01
            • 1970-01-01
            • 2019-05-14
            • 2011-04-06
            • 1970-01-01
            相关资源
            最近更新 更多