Was ist in PHP der Unterschied zwischen Zeichenfolgen in einfachen und doppelten Anführungszeichen?
P粉604507867
2023-08-18 11:45:01
<p>Ich bin ein wenig verwirrt, warum in PHP einige Zeichenfolgen im Code einfache Anführungszeichen und andere doppelte Anführungszeichen verwenden. </p>
<p>Ich weiß nur, dass in .NET oder C die Verwendung von einfachen Anführungszeichen bedeutet, dass es sich um ein Zeichen und nicht um eine Zeichenfolge handelt. </p>
双引号中的内容会被解析,而单引号中的内容不会被解析:
PHP字符串不仅可以用两种方式指定,而且还可以用四种方式。
\'
进行转义,要显示一个反斜杠,可以用另一个反斜杠\\
进行转义(所以,是的,即使是单引号字符串也会被解析)。$type
,你想要echo "The $types are"
。这将查找变量$types
。要解决这个问题,使用echo "The {$type}s are"
。查看字符串解析以了解如何使用数组变量等。<<<
开始。在这个运算符之后,提供一个标识符,然后是一个换行符。然后是字符串本身,然后再次使用相同的标识符来关闭引用。在这种语法中,你不需要转义引号。<<<
序列来标识,但后面的标识符用单引号括起来,例如<<<'EOT'
。Nowdoc中不进行解析。注意: 单引号内的单引号和双引号内的双引号必须进行转义:
速度:
没有区别。
请阅读一篇来自PHP核心开发者的可信文章。说到测试,我们永远不应该将其视为理所当然。必须理解编写可信测试以及解释其结果需要很多知识和经验。这意味着大多数测试都是虚假的。例如,在像这样的代码中
引号字符串只被解析一次,与整个脚本一起,然后被转换为操作码。然后执行一百万次。因此,它测量的不是解析。这只是冰山一角。对于像这样的纳米基准测试,几乎不可能创建一个不会被某些干扰副作用破坏的可信测试。