Ich bin etwas verwirrt darüber, warum ich Code in PHP sehe, in dem Zeichenfolgen in einfache Anführungszeichen und manchmal in doppelte Anführungszeichen gesetzt werden.
Ich weiß nur, dass es sich in .NET oder C, wenn es in einfachen Anführungszeichen steht, um ein Zeichen und nicht um eine Zeichenfolge handelt.
事物在双引号中计算,但不在单引号中计算:
可以指定
PHP 字符串不仅仅是两种方式,而是四种方式。
\'对其进行转义,而要显示反斜杠,您可以使用另一个反斜杠\\ code> (所以是的,即使是单引号字符串也会被解析)。$type并且您想要回显“The $types are”。这将查找变量$types。要解决此问题,请使用echo "The {$type} are"。看看字符串解析了解如何使用数组变量等。开头。在该运算符之后,提供一个标识符,然后提供一个换行符。接下来是字符串本身,然后再次使用相同的标识符来结束引用。您不需要在此语法中转义引号。序列进行标识,但后面的标识符用单引号括起来,例如。nowdoc 中不进行解析。注释:单引号内的单引号和双引号内的双引号必须转义:
速度:
没有区别。
请阅读可信文章一位 PHP 核心开发人员谈到了这个问题。说到测试,我们永远不应该认为它们是理所当然的。必须明白,编写可信的测试,特别是解释其结果需要大量的知识和经验。这意味着大多数测试都是假的。例如,在这样的代码中
for($i=0;$i<100000;$i++) { 'string'; }带引号的字符串与整个脚本一起仅被解析一次,然后被转换为操作码。然后它被执行一百万次。所以它测量除了解析之外的任何东西。这只是冰山一角。对于这样的纳米基准,几乎不可能创建一个不会被某些干扰性副作用破坏的可靠测试。