展开全部
单引号,单引号中的内容会被直接当成一个字符串,单引号中无法32313133353236313431303231363533e4b893e5b19e31333337613864输出变量值;$a = 'abcd';
echo '$a'; // 输出结果就是 $a,而不是 abcd
双引号,双引号中可以输出简单变量,不能输出复杂变量,否则会报错;$a = 'abcd';
$b = array('aaa' => 'abcd');
echo "$a"; // 输出 abcd,因为双引号中可以解析简单变量
echo "$b['aaa']"; // 直接报错,因为双引号中不能解析复杂变量
花括号,花括号中既可以输出简单变量,也可以输出复杂变量,如数组、对象等;$a = 'abcd';
$b = array('aaa' => 'abcd', 'bbb' => array(12,34));
echo "{$a}"; // 输出 abcd
echo "{$b['aaa']}"; // 输出 abcd
echo "{$b['bbb'][1]}"; // 输出 34
所以写的时候想偷懒就用花括号,不会出错;
但是在性能上,单引号的性能最好,因为单引号中的内容会直接被当成字符串,没其他的解析;而解析双引号的时候,会先判断双引号内有没有变量,有变量就把变量用变量值代替,最后再输出双引号内整个的内容;花括号就更不用说了,可以输出复杂的变量内容。
所以一般如果项目没有性能要求的话或者小项目的话,随便怎么用没关系;但是大网站或者要求性能的网站就得视情况挑着用了