$a = 1;
echo "$a";
//output:1$a = 1;
echo '$a';
//output:$a''会原样显示一切字符串和字符.""会尝试解析里面的变量,转义字符等.

解决方案 »

  1.   

    正如1楼所说,''里面基本按原样输出,而""则能自动解析内含变量名如$i, $a[key]以及转义字符如 \n, \\,\xff,不过从另一方面看,''的执行效率却比""高一点。
    下面引用一位朋友的话:在php中,用单引号括起的内容被当做字符串常量解释。而用双引号括起的内容被当做“取值表达式”解释,其中的变量名用变量的值替换,文本格式符\t、\r、\n也在这里被替换成对应的ascii码。
    所以
    1、对于字符串常量,使用单引号和双引号是一样的。但后者略慢于前者
    2、对于字符串常量和php变量混合排列的情况,一般使用双引号括起,这样可使可读性加强
    3、双引号还具有将数值类型转换为字符串类型的功能,这在一些场合中是很有用的