2009-04-26 63 views

回答

10

有很多细微的差别,你要读php documentation得到了很多的细节,但重要的细节是:

双引号被解析,而单引号的文字。

可以使用变量内联双引号,但不能用单引号。

有一些渔获,但:

<?php 
$beer = 'Heineken'; 
echo "$beer's taste is great"; // works; "'" is an invalid character for variable names 
echo "He drank some $beers"; // won't work; 's' is a valid character for variable names but the variable is "$beer" 
echo "He drank some ${beer}s"; // works 
echo "He drank some {$beer}s"; // works 
?> 

单引号稍快。

+2

他们更快,因为PHP不检查字符串的变数 – sshow 2009-04-26 14:27:45

9

如果用双引号括起字符串,则会解释转义序列(如\n)和变量标识符(如$var)。

有关具体细节和示例,请参见PHP strings manual

2

最大的一个是这样的。内双引号,可以包括的变量,但在单引号内,变量名称将是文字:

$var1 = "hello"; 

// this will echo "hello world" 
echo "$var1 world"; 

// this will echo $var1 world 
echo '$var1 world'; 

使用双引号在许多情况下,当你把{变得非常有用,expecially }围绕变量名称。以下是一些例子(肯定别人可以给你更多的例子):

// array elements 
echo "Element 5 is {$myArray[5]}"; 
echo "Element 2 subelement 3 is {$myArray[2][3]}"; 
// 
// a dynamic key 
$value = "thing"; 
$someValue = $myArray["some{$value}"]; // returnd $myArray[something] 
相关问题