Heredoc技術,在正規的PHP文檔中和技術書籍中通常沒有詳細講述,只是提到了這是一種Perl風格的字符串輸出技術。可是如今的一些論壇程序,和部分文章系統,都巧妙的使用heredoc技術,來部分的實現了界面與代碼的準分離,phpwind模板就是一個典型的例子。 php
以下:
<?php
$name = '淺水遊';
print <<<EOT html
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb2312" />
<title>Untitled
Document</title>
</head>
<body>
<!--12321-->
Hello,$name!
</body>
</html> 函數
EOT;
?> ui
1.以<<<End開始標記開始,以End結束標記結束,結束標記必須頂頭寫,不能有縮進和空格,且在結束標記末尾要有分號
。開始標記和開始標記相同,好比經常使用大寫的EOT、EOD、EOF來表示,可是不僅限於那幾個,只要保證開始標記和結束標記不在正文中出現便可。 spa
2.位於開始標記和結束標記之間的變量能夠被正常解析,可是函數則不能夠。在heredoc中,變量不須要用鏈接符.或,來拼接,以下: htm
$v=2;
$a=
<<<EOF
"abc"$v
"123"
EOF;
echo $a;
//結果連同雙引號一塊兒輸出:"abc"2 "123" 文檔
3.heredoc經常使用在輸出包含大量HTML語法d文檔的時候。好比:函數outputhtml()要輸出HTML的主頁。能夠有兩種寫法。很明顯第二種寫法比較簡單和易於閱讀。 字符串
function outputhtml(){
echo "<html>";
echo
"<head><title>主頁</title></head>";
echo
"<body>主頁內容</body>";
echo "</html>;
} it
function outputhtml()
{
echo <<<EOT
<html>
<head><title>主頁</title></head>
<body>主頁內容</body>
</html>
EOT;
} io
outputhtml();