php语法问题
可能重复:php语法问题,php,Php,可能重复: 单引号“和双引号“在php中?我的想法是,当使用单引号时,程序中需要使用一些核心值,如果是双引号,它只是一个字符串。我说的对吗?最大的区别是,如果使用双引号,字符串中的任何变量或特殊转义码都将展开;而对于单引号,则不会发生扩展 例如: $var = "foobar"; echo $var; // "foobar" echo '$var'; // "$var" echo "$var"; // "foobar" echo '\n'; // "\n" echo "\n"; // pri
单引号
“
和双引号“
在php中?我的想法是,当使用单引号时,程序中需要使用一些核心值,如果是双引号,它只是一个字符串。我说的对吗?最大的区别是,如果使用双引号,字符串中的任何变量或特殊转义码都将展开;而对于单引号,则不会发生扩展
例如:
$var = "foobar";
echo $var; // "foobar"
echo '$var'; // "$var"
echo "$var"; // "foobar"
echo '\n'; // "\n"
echo "\n"; // prints an actual new line
有关字符串的完整差异列表,请参见PHP文档:最大的差异是,如果使用双引号,字符串中的任何变量或特殊转义码都将展开;而对于单引号,则不会发生扩展 例如:
$var = "foobar";
echo $var; // "foobar"
echo '$var'; // "$var"
echo "$var"; // "foobar"
echo '\n'; // "\n"
echo "\n"; // prints an actual new line
有关字符串的完整差异列表,请参见PHP文档:使用双引号创建的字符串将由PHP解析,而使用单引号创建的字符串则不会。还有其他区别,例如对于双引号中的字符串,PHP将解释特殊字符的转义序列。这篇文章完整地解释了这些差异 比如说,
$string = 'World';
echo 'Hello' . $string; // "Hello World"
echo "Hello $string"; // "Hello World"
echo 'Hello $string'; // "Hello $string"
用双引号创建的字符串将被PHP解析,而单引号中的字符串则不会。还有其他区别,例如对于双引号中的字符串,PHP将解释特殊字符的转义序列。这篇文章完整地解释了这些差异 比如说,
$string = 'World';
echo 'Hello' . $string; // "Hello World"
echo "Hello $string"; // "Hello World"
echo 'Hello $string'; // "Hello $string"
除了已经描述的变量展开外,双引号还解释
\n
(作为换行符)、\t
(作为制表符)和其他转义序列。单引号仅将\
解释为一个反斜杠,\'
解释为单引号,其他组合按字面理解,即strlen('\n')==2
,strlen(“\n”)==1
,除了已经描述的变量展开之外,双引号还将\n
(作为新行)解释,\t
(作为选项卡)和其他转义序列。单引号仅将\
解释为一个反斜杠,\'
解释为单引号,其他组合按字面理解,即strlen('\n')==2
,strlen(“\n”)==1
这两个字符串的主要区别在于,用双引号创建的字符串将由PHP解析,而单引号不会
// they both output 'Yahoo Google'
$str = 'Google';
echo 'Yahoo' . $str;
echo "Yahoo $str";
有关这些的更多信息,请参见下面的链接
这两种方法的主要区别在于,PHP将解析使用双引号创建的字符串,而不使用单引号
// they both output 'Yahoo Google'
$str = 'Google';
echo 'Yahoo' . $str;
echo "Yahoo $str";
有关这些的更多信息,请参见下面的链接
除了其他答案中提到的内容外,如果使用单引号
”
,则内部的双引号将被视为普通字符,无需转义,反之亦然
例如,两者都将打印他说,“你好,杰克”
除了其他答案中提到的内容外,如果使用单引号
”
,则内部的双引号将被视为普通字符,无需转义,反之亦然
例如,两者都将打印他说,“你好,杰克”