PHP中單引號(hào)和雙引號(hào)的區(qū)別詳解
本文將介紹PHP中單引號(hào)和雙引號(hào)的區(qū)別。
PHP中單引號(hào)和雙引號(hào)簡(jiǎn)介
在 PHP 中,我們使用引號(hào)來(lái)指定值是字符串文字。有兩種不同類型的報(bào)價(jià)。它們是單引號(hào)'和雙"引號(hào)。但是,我們可以使用和之類的字符串語(yǔ)法來(lái)指定字符串文字。在本文中,我們將重點(diǎn)關(guān)注引號(hào)。我們可以用單引號(hào)或雙引號(hào)將字符串文字包裹起來(lái),以將值表示為字符串。
說(shuō)明
1、雙引號(hào)解釋變量,單引號(hào)不解釋變量。
2、在雙引號(hào)中插入單引號(hào),如果單引號(hào)中有變量,則解釋變量。
3、雙引號(hào)變量名后面必須有一個(gè)非數(shù)字。
字母、下劃線的特殊字符,或者用{}把變量括起來(lái),否則變量名后面的部分會(huì)作為一個(gè)整體,造成語(yǔ)法錯(cuò)誤。
4、單引號(hào)的效率高于雙引號(hào)。
可以使單引號(hào)字符盡量使用單引號(hào)。
一個(gè)例子如下所示。
示例代碼:
<?php echo "hey you \n"; echo 'hey you'; ?>
輸出:
hey you
hey you
在上面的示例中,兩個(gè)引號(hào)的使用似乎是相同的。但不僅如此。引號(hào)的功能是相同的,但它們的工作方式有所不同。我們將在下面討論單引號(hào)和雙引號(hào)之間的顯著差異。
PHP中字符串和變量插值時(shí)單引號(hào)和雙引號(hào)的區(qū)別
單引號(hào)和雙引號(hào)之間最顯著的區(qū)別在于我們插入字符串和變量時(shí)。單引號(hào)不插入字符串和變量。單引號(hào)內(nèi)的內(nèi)容會(huì)按原樣打印出來(lái)。在大多數(shù)情況下,單引號(hào)內(nèi)沒(méi)有任何變量或轉(zhuǎn)義序列的編譯。
但是,在雙引號(hào)的情況下,寫在引號(hào)內(nèi)的變量將被插入字符串。這意味著將評(píng)估字符串中的變量。因此,在插入字符串和變量時(shí)很容易使用雙引號(hào)。雙引號(hào)優(yōu)于單引號(hào)的優(yōu)點(diǎn)是我們不需要使用.運(yùn)算符連接字符串和變量。但是,由于需要在字符串中計(jì)算變量,因此使用雙引號(hào)會(huì)比使用單引號(hào)稍微慢一些。
例如,創(chuàng)建一個(gè)變量$name并將字符串寫入Bond其中。接下來(lái),寫入字符串The name is $name.并用雙引號(hào)將字符串括起來(lái)。使用該echo函數(shù)打印字符串。同樣,在下一行中用單引號(hào)將確切的字符串括起來(lái)。
示例代碼:
<?php $name = "Bond"; echo "The name is $name. \n"; echo 'The name is $name.'; ?>
輸出:
The name is Bond.
The name is $name.
$name如輸出所示,使用雙引號(hào)對(duì)變量進(jìn)行評(píng)估。使用單引號(hào)時(shí),字符串按原樣打印。這是 PHP 中單引號(hào)和雙引號(hào)之間的顯著區(qū)別之一。
PHP中轉(zhuǎn)義撇號(hào)時(shí)單引號(hào)和雙引號(hào)的區(qū)別
本節(jié)將討論 PHP 中使用雙引號(hào)和單引號(hào)的轉(zhuǎn)義序列。轉(zhuǎn)義序列可以在雙引號(hào)內(nèi)使用來(lái)轉(zhuǎn)義字符。同時(shí),大多數(shù)轉(zhuǎn)義序列不會(huì)在單引號(hào)內(nèi)解釋。但是,轉(zhuǎn)義撇號(hào)有一個(gè)例外。
如果我們?cè)谑褂秒p引號(hào)的同時(shí)在字符串中寫入撇號(hào),則無(wú)需轉(zhuǎn)義撇號(hào)。但是,在單引號(hào)的情況下,我們需要使用\'. 示例如下所示。
示例代碼:
<?php echo "Napoleon Hill's \"Think and grow rich\". \n"; echo 'Napoleon Hill\'s \"Think and grow rich\".'; ?>
輸出:
Napoleon Hill's "Think and grow rich".
Napoleon Hill's \"Think and grow rich\".
在上面的代碼中,很明顯撇號(hào)不能使用雙引號(hào)轉(zhuǎn)義。雙引號(hào)也使用字符轉(zhuǎn)義在雙引號(hào)內(nèi)進(jìn)行轉(zhuǎn)義。同時(shí),在單引號(hào)的情況下,撇號(hào)使用字符轉(zhuǎn)義進(jìn)行轉(zhuǎn)義。在后一種情況下,使用字符轉(zhuǎn)義時(shí)不會(huì)轉(zhuǎn)義雙引號(hào)。
這些是 PHP 中單引號(hào)和雙引號(hào)之間的顯著差異。
補(bǔ)充知識(shí):字符串內(nèi)部如果出現(xiàn)PHP引號(hào)怎么辦--關(guān)于轉(zhuǎn)義.
比如我們想輸出: 我"是\'天才
這時(shí)候就必須用到轉(zhuǎn)義了.轉(zhuǎn)義即把本來(lái)有作用的符號(hào)轉(zhuǎn)成無(wú)意義的字符.
這樣就正常了,因?yàn)樘?hào)把它后面的任何字符都轉(zhuǎn)成無(wú)意義的符號(hào).在這里來(lái)說(shuō),PHP解析器根本沒(méi)把號(hào)后面的引號(hào)當(dāng)成引號(hào)來(lái)看待.
同樣的,還可以轉(zhuǎn)義分號(hào),$符號(hào)等特殊符號(hào).
總結(jié)
到此這篇關(guān)于PHP中單引號(hào)和雙引號(hào)區(qū)別的文章就介紹到這了,更多相關(guān)PHP單引號(hào)和雙引號(hào)區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
現(xiàn)在很多網(wǎng)站都存在跨站腳本攻擊漏洞,讓黑客有機(jī)可乘.跨站攻擊很容易就可以構(gòu)造,而且非常隱蔽,不易被查覺(jué)(通常盜取信息后馬上跳轉(zhuǎn)回原頁(yè)面)。如何攻擊,在此不作介紹,主要談?wù)勅绾畏婪丁?/div> 2015-09-09
PHP連接MSSQL2008/2005數(shù)據(jù)庫(kù)(SQLSRV)配置實(shí)例
這篇文章主要介紹了PHP連接MSSQL2008/2005數(shù)據(jù)庫(kù)(SQLSRV)配置方法,實(shí)例講述了完整的連接與配置過(guò)程,并提供了具體的擴(kuò)展文件下載與測(cè)試代碼,需要的朋友可以參考下2014-10-10
PHP利用正則表達(dá)式將相對(duì)路徑轉(zhuǎn)成絕對(duì)路徑的方法示例
這篇文章主要介紹了PHP利用正則表達(dá)式將相對(duì)路徑轉(zhuǎn)成絕對(duì)路徑的方法,文中給出了詳細(xì)的示例代碼,大家可以整合成一個(gè)方法,在需要的地方調(diào)用,非常的不錯(cuò)。需要的朋友們下面來(lái)一起看看吧。2017-02-02
php簡(jiǎn)單實(shí)現(xiàn)批量上傳圖片的方法
這篇文章主要介紹了php簡(jiǎn)單實(shí)現(xiàn)批量上傳圖片的方法,實(shí)例分析了php文件傳輸?shù)膶?shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-05-05

