中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

php中heredoc與nowdoc的作用是什么-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)php中heredoc與nowdoc的作用是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

為周口等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及周口網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、周口網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

Heredoc技術(shù),在正規(guī)的PHP文檔中和技術(shù)書籍中一般沒有詳細(xì)講述,只是提到了這是一種Perl風(fēng)格的字符串輸出技術(shù)。但是現(xiàn)在的一些論壇程序,和部分文章系統(tǒng),都巧妙的使用heredoc技術(shù),來部分的實(shí)現(xiàn)了界面與代碼的準(zhǔn)分離,phpwind模板就是一個(gè)典型的例子。

1.以<<<End開始標(biāo)記開始,以End結(jié)束標(biāo)記結(jié)束,結(jié)束標(biāo)記必須頂頭寫,不能有縮進(jìn)和空格,且在結(jié)束標(biāo)記末尾要有分號 。開始標(biāo)記和開始標(biāo)記相同,比如常用大寫的EOT、EOD、EOF來表示,但是不只限于那幾個(gè),只要保證開始標(biāo)記和結(jié)束標(biāo)記不在正文中出現(xiàn)即可。


2.位于開始標(biāo)記和結(jié)束標(biāo)記之間的變量可以被正常解析,但是函數(shù)則不可以。在heredoc中,變量不需要用連接符.或,來拼接,如下:

復(fù)制代碼 代碼如下:


$v=2; 
$a= <<<EOF 
"abc"$v 
"123" 
EOF; 
echo $a; //結(jié)果連同雙引號一起輸出:"abc"2 "123"


3.heredoc常用在輸出包含大量HTML語法d文檔的時(shí)候。比如:函數(shù)outputhtml()要輸出HTML的主頁??梢杂袃煞N寫法。很明顯第二種寫法比較簡單和易于閱讀。

復(fù)制代碼 代碼如下:


function outputhtml(){ 
echo "<html>"; 
echo "<head><title>主頁</title></head>";  
echo "<body>主頁內(nèi)容</body>"; 
echo "</html>; 

function outputhtml() 

echo <<<EOT 
   <html> 
   <head><title>主頁</title></head> 
   <body>主頁內(nèi)容</body> 
   </html> 
EOT; 

outputhtml();


在heredoc中會(huì)自動(dòng)替換其中的$變量,將命令和輸入放在一塊,方便

附:heredoc和nowdoc的區(qū)別

heredoc使用 <<< EOT 的標(biāo)示符,而nowdoc使用 <<< 'EOT' 這樣的標(biāo)示符,其中nowdoc是PHP5.3引進(jìn)的新技術(shù),它包含了heredoc的語法,只是其中的內(nèi)容絕對不會(huì)進(jìn)行任何的轉(zhuǎn)義和解釋,是什么內(nèi)容就是什么內(nèi)容,不會(huì)解析PHP相關(guān)的內(nèi)容
heredoc中的PHP變量建議使用{$name->change()} 大括號括起來,這樣可以避免一定的歧義,如果要原樣輸出可以使用傳說中的轉(zhuǎn)義字符 \ ,轉(zhuǎn)義字符本身可以使用轉(zhuǎn)義字符進(jìn)行輸出,即 \ 這種表示方法,大括號之類的這些都需要轉(zhuǎn)義輸出。
為了保證的確可用,建議使用 heredoc 的語法,本身也帶有轉(zhuǎn)義,因?yàn)镻HP5.3才引進(jìn)的nowdoc語法,很多云托管壞境很有可能不支持導(dǎo)致歇菜。
最后強(qiáng)調(diào)下,heredoc是從PHP4.0開始引進(jìn)的,而nowdoc語法則需要5.3版本,因?yàn)閔eredoc包含了nowdoc的功能,所以個(gè)人建議還是使用heredoc比較好些。

簡單來說:


1、heredoc是動(dòng)態(tài)的 nowdoc是靜態(tài)的
2、heredoc類似多行的雙引號 newdoc類似多行的單引號
3、heredoc是一種專門處理大段字符串的通用處理方案,而nowdoc是php為了彌補(bǔ)動(dòng)態(tài)實(shí)現(xiàn)“heredoc”的效率問題而實(shí)現(xiàn)的“高效率”的靜態(tài)版本

看完上述內(nèi)容,你們對php中heredoc與nowdoc的作用是什么有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

分享標(biāo)題:php中heredoc與nowdoc的作用是什么-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://www.rwnh.cn/article18/copsdp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、App開發(fā)、服務(wù)器托管、企業(yè)建站、網(wǎng)站收錄、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
乌拉特后旗| 昔阳县| 张掖市| 贡觉县| 阜新市| 石景山区| 长治县| 舟曲县| 阿克| 万全县| 上饶县| 平安县| 淳安县| 定远县| 伊金霍洛旗| 晋宁县| 桦甸市| 湘潭县| 老河口市| 大冶市| 崇礼县| 依安县| 四子王旗| 勐海县| 行唐县| 南皮县| 闵行区| 阜新市| 皋兰县| 株洲县| 伊金霍洛旗| 宁陕县| 湛江市| 天峻县| 阜宁县| 怀宁县| 温泉县| 祁东县| 清涧县| 筠连县| 商丘市|