我不是 PHP 编程方面的专家,但我有点困惑为什么我在 PHP 中看到一些代码用单引号放入字符串的代码,有时用双引号。
我只知道在. NET 或 C 语言中,如果它是单引号,这意味着它是一个字符,而不是一个字符串。
PHP 字符串不仅可以通过两种方式指定,而且可以通过四种方式指定。
\'
,并显示一个反斜杠,你可以用一个反斜杠转义\\
( 所以,是的,即使是单引号的字符串被解析 )。 $type
,你可以echo "The $types are"
这将寻找变量$types
。为了解决这个问题,请使用echo "The {$type}s are"
你可以在美元符号之前或之后放置左括号。看一下字符串解析 ,看看如何使用数组变量等。 <<<
开头。在此运算符之后,提供标识符,然后提供换行符。字符串本身跟随,然后再次使用相同的标识符来关闭引号。您不需要在此语法中转义引号。 <<<
序列标识,但后面的标识符用单引号括起来,例如<<<'EOT'
。 在 nowdoc 中没有解析。 速度:
我不会过分强调单引号比双引号更快。在某些情况下,它们可能更快。这篇文章解释了一种方式,其中单引号和双引号基本上同样快,因为 PHP 4.3 ( Useless Optimizations
到底部, C
部分)。此外,该基准测试页面还有单引号和双引号比较。大多数比较是相同的。有一个比较,其中双引号比单引号慢。
事情用双引号评估,但不是单一:
$s = "dollars";
echo 'This costs a lot of $s.'; // This costs a lot of $s.
echo "This costs a lot of $s."; // This costs a lot of dollars.
'
单引号指定字符串的最简单方法是将其用单引号括起来。单引号通常更快,内部引用的所有内容都被视为普通字符串。
例:
echo 'Start with a simple string';
echo 'String\'s apostrophe';
echo 'String with a php variable'.$name;
"
双引在 PHP 中使用双引号以避免必须使用句点来分隔代码(注意:如果您不想在字符串中使用连接( .
)运算符,请使用大括号{}
来包含变量。
例:
echo "Start with a simple string";
echo "String's apostrophe";
echo "String with a php variable {$name}";
是。使用单引号稍微快一些。
PHP 不会使用额外的处理来解释单引号内的内容。当你使用双引号时,PHP 必须解析以检查字符串中是否有任何变量。