解析php中heredoc的使用方法_PHP教程

來源:互聯網
上載者:User
Heredoc技術,在正規的PHP文檔中和技術書籍中一般沒有詳細講述,只是提到了這是一種Perl風格的字串輸出技術。但是現在的一些論壇程 序,和部分文章系統,都巧妙的使用heredoc技術,來部分的實現了介面與代碼的准分離,phpwind模板就是一個典型的例子。

如下:
複製代碼 代碼如下:
$name = '淺水遊';
print <<


Untitled Document



Hello,$name!


EOT;
?>

1.以 <<開始標記開始,以End結束標記結束, 結束標記必須頂頭寫,不能有縮排和空格,且在結束標記末尾要有分號 。開始標記和開始標記相同,比如常用大寫的EOT、EOD、EOF來表示,但是不只限於那幾個,只要保證 開始標記和結束標記不在本文中出現即可

2.位於開始標記和結束標記之間的變數可以被正常解析,但是函數則不可以。在heredoc中,變數不需要用串連符.或,來拼接,如下:
複製代碼 代碼如下:
$v=2;
$a= <<"abc"$v
"123"
EOF;
echo $a; //結果連同雙引號一起輸出:"abc"2 "123"

3.heredoc常用在輸出包含大量HTML文法d文檔的時候。比如:函數outputhtml()要輸出HTML的首頁。可以有兩種寫法。很明顯第二種寫法比較簡單和易於閱讀。
複製代碼 代碼如下:
function outputhtml(){
echo "";
echo "首頁";
echo "首頁內容";
echo ";
}

function outputhtml()
{
echo <<
首頁
首頁內容

EOT;
}
outputhtml();

http://www.bkjia.com/PHPjc/327655.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/327655.htmlTechArticleHeredoc技術,在正規的PHP文檔中和技術書籍中一般沒有詳細講述,只是提到了這是一種Perl風格的字串輸出技術。但是現在的一些論壇程 序...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.