php單引號與雙引號
『壹』 php 單引號和雙引號的區別
兩者的區喊侍悄別如下:
1、變數上的區鄭渣別
雙引號能解釋變數,談前單引號不能解釋變數。 單引號插入雙引號中,如果單引號中包含變數,則變數解釋。
2、效率上的區別
單引號比雙問號更有效,因為首先需要遍歷雙引號以確定其中是否有變數,然後執行操作,並且不需要判斷單引號。
3、字元上的區別
雙引號解釋轉義符,單引號不解釋轉義符,而是解釋'和。
『貳』 php 雙引號和 單引號 有什麼異同
在PHP中,字元串的定義可以使用單引號,也可以使用雙引號。但是必須使用同一種單或雙引號來定義字元串,如:『Hello"和「Hello'為非法的字元串定義。
定義字元串時,只有一種引號被視為定義符,即單引號或雙引號。於是,如果一個字元串由雙引號開始,那麼只有雙引號被分析器解析。這樣,就可以在雙引號串中包含任何其他字元,甚至單引號。下面的引號串都是合法的:
$s
=
"I
am
a
'single
quote
string'
inside
a
double
quote
string";
$s
=
'I
am
a
"double
quote
string"
inside
a
single
quote
string';
$s
=
"I
am
a
'single
quote
string'
inside
a
double
quote
string";
$s
=
'I
am
a
"double
quote
string"
inside
a
single
quote
string';
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中,字元串的定義可以使用英文單引號'
',也可以使用英文雙引號"
"。
但是必須使用同一種單或雙引號來定義字元串,如:'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
中屬性的引號。
總之,看實際情況來用啦,怎麼方便怎麼使用。
以上就是本文關於php中單雙引號的區別分析了,希望大家能夠喜歡
『肆』 php中單引號和雙引號怎麼都搞不懂
單引號括起來就是告訴PHP處理時把括起來的東西全部當成字元串,PHP處理時不會對''裡面的東西進行處理。雙引號則是php會對」「里的東西進行相關的轉義。
單引號是直接輸出字元串
雙引號要先進行轉義在輸出的
比如 如果$a=12345
echo 'jadsjsgdj$a'; 輸出jadsjsgdj$a
echo "jadsjsgdj$a"; 輸出jadsjsgdj12345
『伍』 php 的單引號和雙引號的用法
$test1 = "PHP";
1:echo "互聯網最流行的技術$test1" //輸出 互聯網最流行的技術PHP
2:echo '互聯網最流行的技術$test1' //輸出 互聯網最流行的技術$test1
上面兩個例子說明,雙引號裡面的變數,會當作變數解釋,單引號裡面的變數會直接當作字元串來處理,就是說,在單引號裡面的變數會失去其變數的性質,變成一個字元串。
如果想用第一句的方法輸入第二句的結果,加轉義符號啊
3:echo "互聯網最流行的技術\$test1" //輸出 互聯網最流行的技術$test1
4:echo "互聯網最流行的技術$test1技術" //本來是想輸出 互聯網最流行的技術PHP技術,但是你發現,告訴你,找不到變數$test1技術,因為沒有加空格,所以它把後面所有的都當成一個變數了。
所以你會發現,很多優秀的作品,都推薦使用''單引號來寫變數,除非裡面是SQL語句。就是防止這類的錯誤。至於為什麼SQL除外,你可以自己想一下!
『陸』 php 單引號和雙引號的區別
1、變數。雙引號解釋變數,單引號不解釋變數;雙引號里插入單引號,其中單引號里如果有變數的話,變數解釋;
2、字元。雙引號解釋轉義字元,單引號不解釋轉義字元,但是解釋'和;
3、效率。能使單引號字元盡量使用單引號,單引號的效率比雙引號要高(因為雙引號要先遍歷一遍,判斷裡面有沒有變數,然後再進行操作,而單引號則不需要判斷)。
(6)php單引號與雙引號擴展閱讀:
一般情況下兩者是通用的。但雙引號內部變數會解析,而單引號則不解析。
PHP允許我們在雙引號串中直接包含字串變數。
而單引號串中的內容總被認為是普通字元,因此單引號中的內容不會被轉義效率更高。
比如:
$str = 'hello world';
echo "str is $str"; //運行結果: str is hello world
echo 'str is $str'; //運行結果: str is $str