PHP 单引号与双引号

0x00:实验

代码:

|------------------------------------------------------------------------------------|

<?php

$a=1;
$b='$a'; //按照普通字符输出
$c="$a"; //字符串转义,变量解析

echo '直接输出'.$a."\n"; //直接输出1(换行)
echo "双引号输出$a\n"; //双引号输出1(换行)
echo '单引号输出$a\n'."\n"; //单引号输出$a\n(."\n"导致换行)
echo "双引号定义$b\n"; //双引号定义$a(换行)
echo "单引号定义$c\n"; //单引号定义1(换行)

?>

|------------------------------------------------------------------------------------|

0x01:结论

单引号:按照普通字符进行输出

双引号:处理字符串转义,变量解析

辅助记忆:单引号比较单纯,写啥是啥。双引号是两个单引号,会多想一层。

 

在定义字符串时,尽量使用单引号。

注意:单引号内部使用单引号需转义,字符串最后出现反斜杠需转义。

例:

echo 'It\'s fun'; //不能写成 'It's fun'

echo 'C:\Windows\\'; //不能写成 'C:\Windows\'

 

我在其他地方还看到:

|------------------------------------------------------------------------|

$file = "c:\windows\system.ini"; 
echo $file; // 打印结果为: c:windowssystem.ini 
$file = "c:\\windows\\system.ini"; 
echo $file; // 打印结果为: c:\windows\system.ini 

|------------------------------------------------------------------------|

但是我进行验证后发现打印结果都是

c:\windows\system.ini(解释器版本:PHP 5.4.45

 

reference

[1] PHP开发实例大全(基础卷)》

[2] llsun https://www.cnblogs.com/llsun/archive/2012/07/16/2593027.html

[3] b94665 https://zhidao.baidu.com/question/37887548.html

posted on 2018-01-24 16:42  vastian  阅读(163)  评论(0编辑  收藏  举报

导航