简单概括PHP的字符串中单引号与双引号的区别,php字符串
今天有个朋友问起,说下区别,顺便复习下。
单引号与双引号的不同:
- " "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。
- ' '单引号里面的不进行解释,直接输出。
- 单引号解析的时间比双引号快 。
- 单引号支持\转义符,双引号支持的转义符更多 。
1 2 3 4 5 | $hello = 3;
echo "hello is $hello" ;
echo 'hello is $hello' ;
echo "hello is $hello\n" ;
echo 'hello is $hello\n' ;
|
로그인 후 복사
PS:
今天看到老外提到了PHP的单引号的问题,其中提到了有趣的东西,摘录如下:
其中说装了PHP扩展 Vulcan Logic Disassembler 后,可以看到PHP生成的中间码,
首先是:
会转变为:
而
则变成
,是一样的
如果是
1 | echo "This is a $variable" ;
|
로그인 후 복사
则PHP产生的OPCODE为
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | INIT STRING ~0
2 ADD_STRING ~0 ~0 'This'
3 ADD_STRING ~0 ~0 ' '
4 ADD_STRING ~0 ~0 'is'
5 ADD_STRING ~0 ~0 ' '
6 ADD_STRING ~0 ~0 'a'
7 ADD_STRING ~0 ~0 ' '
8 ADD_VAR ~0 ~0 !0
9 ECHO ~0
|
로그인 후 복사
而
1 | echo "This is a " . $variable ;
|
로그인 후 복사
则会变成
1 2 3 | CONCAT ~0 'This is a ' !0
2 ECHO ~0
|
로그인 후 복사
可以见到,速度快很多了,用.连接的话
http://www.bkjia.com/PHPjc/1123788.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1123788.htmlTechArticle简单概括PHP的字符串中单引号与双引号的区别,php字符串 今天有个朋友问起,说下区别,顺便复习下。 单引号与双引号的不同: " "双引号里...