
php 单引号和双引号的区别
双引号 里的东西 输入的时候能判断是否 包含 变量,如果包含 变量 就一起输出
单引号里的就不一样,不判断是否有变量,就全部当成 字符串 输出
我这样理解有错没?人家说还有其他的不同之处.
单引号和双引号的区别
1.双引号 里的东西 输入的时候能判断是否 包含 变量,如果包含 变量 就一起输出
2.单引号里的就不一样,不判断是否有变量,就全部当成 字符串 输出
3.单引号解析的时间比双引号快
4.单引号支持\转义符,双引号支持的转义符多 展开
1、变量。双引号解释变量,单引号不解释变量;双引号里插入单引号,其中单引号里如果有变量的话,变量解释;
2、字符。双引号解释转义字符,单引号不解释转义字符,但是解释'\和\;
3、效率。能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里面有没有变量,然后再进行操作,而单引号则不需要判断)。
扩展资料:
一般情况下两者是通用的。但双引号内部变量会解析,而单引号则不解析。
PHP允许我们在双引号串中直接包含字串变量。
而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。
比如:
$str = 'hello world';
echo "str is $str"; //运行结果: str is hello world
echo 'str is $str'; //运行结果: str is $str
php 单引号和双引号的区别:
双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。
例如:
$foo = 2;
echo "foo is $foo"; // 打印结果: foo is 2
echo 'foo is $foo'; // 打印结果: foo is $foo
echo "foo is $foo\n"; // 打印结果: foo is 2 (同时换行)
echo 'foo is $foo\n'; // 打印结果: foo is $foo\n
$foo = 2;
echo "foo is $foo"; // 打印结果: foo is 2
echo 'foo is $foo'; // 打印结果: foo is $foo
echo "foo is $foo\n"; // 打印结果: foo is 2 (同时换行)
echo 'foo is $foo\n'; // 打印结果: foo is $foo\n
在单引号串中甚至反斜杠也失去了他的扩展含义(除了插入反斜杠\\和插入单引号\')。所以,当你想在字串中进行变量代换和包 含\n(换行符)等转义序列时,你应该使用双引号。单引号串可以用在其他任何地方,脚本中使用单引号串处理速度会更快些。
将
\'
转换成
'
双引号会转换里面的内容,所以比较慢。
echo
'
aaa\'aaa';
结果是
aaa'aaa
echo
'
aaa\naaa';
结果是
aaa\naaa
(\n不会转换成换行符)
echo
"aaa\naaa";
结果是
aaa
aaa
(\n会转换成换行符)
$a
=
'test';
echo
'$a'
结果是
$a
($a不会转换成对应的值)
echo
”$a“
结果是
test
($a转换成对应的值)
1.单引号的变量不产生变量作用,而双引号则会;如代码所示:
<?
$words="变量发生作用";
echo('这里用的是单引号$words');//这里用的是单引号$words
echo("这里用的是双引号$words");//这里用的是双引号变量发生作用
?>
2.单引号读出数据库字段值时速度要比双引号快;