PHP单双引号的关系与区别
2015-12-29 23:30
651 查看
今天我们直接通过几个实际小案例来讲解区别,大家认真观察!
// 双引号的知识讲解
// 这个写法有错误,因为它会将hello看成双引号字符,而world则会成为不认识的字符
$str1 = "hello"world"".'<br>';
// 正确写法:应该给带双引号的world加上转义字符\,这样就不会出现边界歧义了
$str1 = "hello \"world\"".'<br>';
echo $str1;
$str2 = "hello \n\r\t world".'<br>'; // \n\r:换行回车符,双引号可以解析
echo $str2;
$str3 = "hello $str1".'<br>'; // 此时系统会将$str1解析才成变量,则会调用$str1
echo $str3;
$str4 = "hello \$str1"; // 为$符合加上转义字符以后,则系统会将$str1看成是普通字符串,而不再是变量
echo $str4;
// 单引号的知识讲解
$str1 = 'hello \n\r\t world'.'<br>';
// 单引号无法解析识别\n\r\t,会直接将其当普通字符输出
echo $str1;
$str2 = 'hello $str1'; // 单引号也无法解析识别$符号,会直接把$str1当普通字符输出
echo $str2;
单双引号的混用讲解,得到3个结论:
1. 单引号无法做过多转义,只能转义\\ \',而双引号则可以转义\\ \" \n \r \t
2. 单引号无法解析$变量符,而双引号则可以
3. 由于单引号无需考虑很多情况,因此单引号比双引号执行速度更快!
相信通过今晚的分析,大家以后对于PHP中的单双引号,一定不会有什么疑问了!
大家可以关注我的微信公众号:iwork,我会每天推送一篇原创文章,让大家都能有所收获!
// 双引号的知识讲解
// 这个写法有错误,因为它会将hello看成双引号字符,而world则会成为不认识的字符
$str1 = "hello"world"".'<br>';
// 正确写法:应该给带双引号的world加上转义字符\,这样就不会出现边界歧义了
$str1 = "hello \"world\"".'<br>';
echo $str1;
$str2 = "hello \n\r\t world".'<br>'; // \n\r:换行回车符,双引号可以解析
echo $str2;
$str3 = "hello $str1".'<br>'; // 此时系统会将$str1解析才成变量,则会调用$str1
echo $str3;
$str4 = "hello \$str1"; // 为$符合加上转义字符以后,则系统会将$str1看成是普通字符串,而不再是变量
echo $str4;
// 单引号的知识讲解
$str1 = 'hello \n\r\t world'.'<br>';
// 单引号无法解析识别\n\r\t,会直接将其当普通字符输出
echo $str1;
$str2 = 'hello $str1'; // 单引号也无法解析识别$符号,会直接把$str1当普通字符输出
echo $str2;
单双引号的混用讲解,得到3个结论:
1. 单引号无法做过多转义,只能转义\\ \',而双引号则可以转义\\ \" \n \r \t
2. 单引号无法解析$变量符,而双引号则可以
3. 由于单引号无需考虑很多情况,因此单引号比双引号执行速度更快!
相信通过今晚的分析,大家以后对于PHP中的单双引号,一定不会有什么疑问了!
大家可以关注我的微信公众号:iwork,我会每天推送一篇原创文章,让大家都能有所收获!
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- Ruby中的变量学习总结
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- 详解Lua中的变量相关知识点
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- dos批处理文件中的变量小结
- 探索PowerShell(七) PowerShell变量