为什么orange是单引号,橘子用双引号?

来源:1-7 PHP数组之关联数组初始化

silence_

2014-12-11 17:08

为什么orange是单引号,橘子用双引号?

写回答 关注

2回答

  • silence_
    2015-06-04 20:36:59

    谢谢解答!

  • 温暖的骨头
    2014-12-11 18:04:32

    字符串变量中的单、双引号  
     
    PHP允许我们在双引号串中直接包含字串变量,我们可以发现下面的两个字串的处理结果是相同的。

    代码如下:


    $full_name = $first_name . ' ' . $last_name;
    $full_name = "$first_name $last_name";   


    单引号串和双引号串在PHP中的处理是不相同的。双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。例如:
    Php代码

    代码如下:


    $foo = 2;
    echo "foo is $foo"; // 打印结果: foo is 2
    echo 'foo is $foo'; // 打印结果: foo is $foo
    echo "foo is $foo\n"; // 打印结果: foo is 2 (同时换行)
    echo 'foo is $foo\n'; // 打印结果: foo is $foo\n
    $foo = 2;
    echo "foo is $foo"; // 打印结果: foo is 2
    echo 'foo is $foo'; // 打印结果: foo is $foo
    echo "foo is $foo\n"; // 打印结果: foo is 2 (同时换行)
    echo 'foo is $foo\n'; // 打印结果: foo is $foo\n   


    正如你所看到的,在单引号串中甚至反斜杠也失去了他的扩展含义(除了插入反斜杠\\和插入单引号\')。所以,当你想在字串中进行变量代换和包 含\n(换行符)等转义序列时,你应该使用双引号。单引号串可以用在其他任何地方,脚本中使用单引号串处理速度会更快些,因为PHP语法分析器对单引号串 的处理方式比较单纯,而双引号的处理由于串内部也需要解析,因此更复杂些,所以处理速度略慢。


PHP进阶篇

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

181835 学习 · 2577 问题

查看课程

相似问题