简单概括PHP的字符串中单引号与双引号的区别_php教程-查字典教程网
简单概括PHP的字符串中单引号与双引号的区别
简单概括PHP的字符串中单引号与双引号的区别
发布时间:2016-12-29 来源:查字典编辑
摘要:今天有个朋友问起,说下区别,顺便复习下。单引号与双引号的不同:""双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。''单引号里...

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

单引号与双引号的不同:

" "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。 ' '单引号里面的不进行解释,直接输出。 单引号解析的时间比双引号快 。 单引号支持转义符,双引号支持的转义符更多 。

$hello= 3; echo "hello is $hello"; // 打印结果:hello is 3 echo 'hello is $hello'; // 打印结果: hello is $hello echo "hello is $hellon"; // 打印结果: hello is 2 (同时换行) echo 'hello is $hellon'; // 打印结果: hello is $hellon

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

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

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新php教程学习
    热门php教程学习
    编程开发子分类