在PHP中,字符串的定義可以使用英文單引號' '
,也可以使用英文雙引號" "
。
但是必須使用同一種單或雙引號來定義字符串,如:'Hello World"
和"Hello World'
為非法的字符串定義。
單引號和雙引號到底有啥區別呢?
PHP允許我們在雙引號串中直接包含字串變量
。
而單引號串中的內容總被認為是普通字符,因此單引號中的內容不會被轉義效率更高。
比如:
$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 中屬性的引號。
總之,看實際情況來用啦,怎麼方便怎麼使用。