当前位置: 移动技术网 > IT编程>开发语言>PHP > 简单概括PHP的字符串中单引号与双引号的区别

简单概括PHP的字符串中单引号与双引号的区别

2017年12月12日  | 移动技术网IT编程  | 我要评论

李志龙华夏老年网诈骗,顺德陈村,衡阳皮肤病医院

今天有个朋友问起,说下区别,顺便复习下。

单引号与双引号的不同:

  • " "双引号里面的字段会经过编译器解释,然后再当作html代码输出。
  • ' '单引号里面的不进行解释,直接输出。 
  • 单引号解析的时间比双引号快 。
  • 单引号支持\转义符,双引号支持的转义符更多 。
$hello= 3;
echo "hello is $hello"; // 打印结果:hello is 3 
echo 'hello is $hello'; // 打印结果: hello is $hello 
echo "hello is $hello\n"; // 打印结果: hello is 2 (同时换行) 
echo 'hello is $hello\n'; // 打印结果: hello is $hello\n

ps:
今天看到老外提到了php的单引号的问题,其中提到了有趣的东西,摘录如下:
其中说装了php扩展 vulcan logic disassembler 后,可以看到php生成的中间码,
首先是:

echo "this is a string"; 

会转变为:

echo    'this is a string' 

echo 'this is a string'; 

则变成

 echo    'this is a string' 

,是一样的
如果是

echo "this is a $variable"; 

则php产生的opcode为

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 

echo "this is a " . $variable; 

则会变成

concat    ~0 'this is a ' !0 

2 echo      ~0 

可以见到,速度快很多了,用.连接的话

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网