使用php heredoc字符串而不是在引号之前添加斜杠的任何优势?

时间:2013-06-22 20:08:46

标签: php string heredoc

我。使用heredoc格式而不是使用'"是否有任何优势?

唯一明显的一点是,当我们使用heredoc格式时,我们不需要\'\"

使用heredoc的任何其他原因?也许从处理速度等方面来看......

注意:我没有考虑可读性或其他个人偏好。

II。$var这样的变量是否在具有heredoc格式的字符串中处理?

2 个答案:

答案 0 :(得分:1)

  1. 使用heredoc没有任何好处。除了换行符(你没有提到这个)。
  2. 变量将在双引号字符串中扩展。
  3. PHP不允许在类属性的初始化中使用heredoc,所以你可以说这也是一个缺点(因为php5.3然而,这只适用于heredoc中的变量)。

    Nowdoc是单引号,因为Heredoc是双引号。 (Nowdoc不会扩展变量)。

答案 1 :(得分:0)

我在bash编程中经常使用heredocs - 作为生成文件的快速而肮脏的模板。 Heredocs也更容易包含在从多个其他文件合并的源文件中(更容易在一个文件中分发数据和代码)。

恕我直言,它是一种有用的技术,用于提高源文件中包含的数据的可读性。 Heredocs还用于创建自解压脚本,然后创建自解压缩档。

我猜在PHP中他们有类似(和边际)的用法。例如:我认为将一些Javascript代码嵌入到heredoc中然后在带引号的字符串中更简单,更清晰 - 想象一下PHP文件中的javascript中的一些复杂正则表达式以及所有反斜杠的转义。