在PHP中,字符串的定义可以使用英文单引号’ ‘,也可以使用英文双引号” “。
但是必须使用同一种单或双引号来定义字符串,如:’Hello World”和”HelloWorld’为非法的字符串定义。
单引号和双引号到底有啥区别呢?
PHP允许我们在双引号串中直接包含字串变量。
而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。
比如:
view source
?
$str
=
'hello'
;
echo
"str is $str"
;
//运行结果: str is hello
echo
'str is $str'
;
//运行结果: str is $str
php中,双引号中的变量($var)和特殊字符(\r\n之类)会被转义,单引号中的内容不会被转义(所以效率更高)。
使用上的话,我以前很喜欢在sql字符串里这样写$sql = “SELECT * FROM table WHERE id =$id”,这样里面的$id可以被转义,单引号就不行。
在JavaScript中单引号和双引号没有区别,只要成对使用就行。
我在JavaScript 中使用单引号大多是因为 Javascript 和 HTML 打交道比较多,输出 HTML片段的时候不需要转义 HTML 中属性的引号。总之,看实际情况来,怎么方便怎么使用。