Heredoc技術(shù),在正規(guī)的PHP文檔中和技術(shù)書籍中一般沒(méi)有詳細(xì)講述,只是提到了這是一種Perl風(fēng)格的字符串輸出技術(shù)。但是現(xiàn)在的一些論壇程序,和部分文章系統(tǒng),都巧妙的使用heredoc技術(shù),來(lái)部分的實(shí)現(xiàn)了界面與代碼的準(zhǔn)分離,phpwind模板就是一個(gè)典型的例子。
如下:
									<?php    $name = '淺水游';    print <<<EOT            <html>            <head>            <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />            <title>Untitled Document</title>            </head>            <body>            <!--12321-->            Hello,$name!            </body>            </html>        EOT;?> | 
							
注意:
1.以<<<End開始標(biāo)記開始,以End結(jié)束標(biāo)記結(jié)束,結(jié)束標(biāo)記必須頂頭寫,不能有縮進(jìn)和空格,且在結(jié)束標(biāo)記末尾要有分號(hào) 。
2.開始標(biāo)記和開始標(biāo)記相同,比如常用大寫的EOT、EOD、EOF來(lái)表示,但是不只限于那幾個(gè),只要保證開始標(biāo)記和結(jié)束標(biāo)記不在正文中出現(xiàn)即可。
3.位于開始標(biāo)記和結(jié)束標(biāo)記之間的變量可以被正常解析,但是函數(shù)則不可以。在heredoc中,變量不需要用連接符.或,來(lái)拼接,如下:
									$v=2;$a= <<<EOF"abc"$v"123"EOF; | 
							
			4.heredoc常用在輸出包含大量HTML語(yǔ)法d文檔的時(shí)候。比如:函數(shù)outputhtml()要輸出HTML的主頁(yè)??梢杂袃煞N寫法。很明顯第二種寫法比較簡(jiǎn)單和易于閱讀。
			第一種
									function outputhtml(){    echo "<html>";    echo "<head><title>主頁(yè)</title></head>";    echo "<body>主頁(yè)內(nèi)容</body>";    echo "</html>;} | 
							
									function outputhtml(){    echo <<<EOT    <html>    <head><title>主頁(yè)</title></head>    <body>主頁(yè)內(nèi)容</body>    </html>    EOT;} | 
							



鄂公網(wǎng)安備 42090202000212號(hào)