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


Posted in PHP onMay 07, 2016

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

单引号与双引号的不同:

  • " "双引号里面的字段会经过编译器解释,然后再当作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

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

PHP 相关文章推荐
木翼下载系统中说明的PHP安全配置方法
Jun 16 PHP
php对gzip文件或者字符串解压实例参考
Jul 25 PHP
php5编程中的异常处理详细方法介绍
Jul 29 PHP
PHP 关于访问控制的和运算符优先级介绍
Jul 08 PHP
Codeigniter实现多文件上传并创建多个缩略图
Jun 12 PHP
CI框架中site_url()和base_url()的区别
Jan 07 PHP
codeigniter发送邮件并打印调试信息的方法
Mar 21 PHP
php简单获取文件扩展名的方法
Mar 24 PHP
PHP判断文件是否被引入的方法get_included_files用法示例
Nov 29 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
Apr 15 PHP
PHP通过文件保存和更新信息的方法分析
Sep 12 PHP
Laravel解决nesting level错误和隐藏index.php的问题
Oct 12 PHP
PHP检测链接是否存在的代码实例分享
May 06 #PHP
一波PHP中cURL库的常见用法代码示例
May 06 #PHP
PHP实现的简单分页类及用法示例
May 06 #PHP
PHP实现的多文件上传类及用法示例
May 06 #PHP
PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
May 06 #PHP
php将一维数组转换为每3个连续值组成的二维数组
May 06 #PHP
PHP递归遍历多维数组实现无限分类的方法
May 06 #PHP
You might like
PHP连接SQLServer2005 的问题解决方法
2010/07/19 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
使用ajaxfileupload.js实现ajax上传文件php版
2014/06/26 Javascript
Javascript闭包(Closure)详解
2015/05/05 Javascript
基于jquery实现导航菜单高亮显示(两种方法)
2015/08/23 Javascript
JavaScript中rem布局在react中的应用
2015/12/09 Javascript
关于JS中二维数组的声明方法
2016/09/24 Javascript
基于bootstrap实现收缩导航条
2017/03/17 Javascript
详解VUE的状态控制与延时加载刷新
2017/03/27 Javascript
mint-ui 时间插件使用及获取选择值的方法
2018/02/09 Javascript
vue 项目中使用Loading组件的示例代码
2018/08/31 Javascript
详解VSCode配置启动Vue项目
2019/05/14 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
2011/03/13 Python
python避免死锁方法实例分析
2015/06/04 Python
浅析python中SQLAlchemy排序的一个坑
2017/02/24 Python
使用python将时间转换为指定的格式方法
2018/11/12 Python
python里dict变成list实例方法
2019/06/26 Python
python matplotlib如何给图中的点加标签
2019/11/14 Python
Python读取YAML文件过程详解
2019/12/30 Python
python简单实现最大似然估计&scipy库的使用详解
2020/04/15 Python
Python实现计算图像RGB均值方式
2020/06/04 Python
python爬虫利用代理池更换IP的方法步骤
2021/02/21 Python
CSS3中的opacity属性使用教程
2015/08/19 HTML / CSS
html5调用app分享功能示例(WebViewJavascriptBridge)
2018/03/21 HTML / CSS
美国女孩洋娃娃店:American Girl
2017/10/24 全球购物
泰国网上购物:Shopee泰国
2018/09/14 全球购物
职业生涯规划书范文
2014/03/10 职场文书
养生餐厅创业计划书范文
2014/03/26 职场文书
迎国庆演讲稿
2014/09/05 职场文书
导师工作推荐信
2015/03/27 职场文书
降价通知函
2015/04/23 职场文书
2015暑假假期总结
2015/07/13 职场文书
卖车协议书范文
2016/03/23 职场文书
检举信的写法
2019/04/10 职场文书
2019个人工作态度自我评价
2019/04/24 职场文书