php heredoc和phpwind的模板技術使用方法小結

來源:互聯網
上載者:User

在PHP的文檔中,只是提到了echo可以使用如下命令輸出多行字串(而且其中的變數被自動替換):

PHP代碼 複製代碼 代碼如下:echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;

上面的END結束符可以自己規定,在Phpwind,使用了“EOT”來結束。但是需要注意的是,這個END必須是在一行的開頭才能有效,這其實是Heredoc技術的一個局限性(因為heredoc可以自訂結束符,所以引入了這個問題),在下面會提到。

phpwind的模板檔案一般存放在templatewind目錄下面,在BBS目錄中,使用require語句包含這個模板檔案。其實這個模板檔案是作為對應的PHP檔案的一部分執行的,所以就不需要像PHPLib Template那樣需要進行模板解析,然後再執行的過程。

為了讓heredoc的內容能被DreamWeaver這樣的編輯器正確識別,以實現“所見即所得 (WYSIWYG)的”的網頁設計,需要在heredoc中增加註釋,樣本檔案如下:

PHP代碼 複製代碼 代碼如下:<!--
<?php
print <<<EOT
-->

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Untitled Document</title>
</head>

<body>
<!--
$name = '淺水遊';
print <<<EOT
-->

Hello,$name!

<!--
EOT
print <<<EOT
-->

</body>
</html>

<!--
EOT;
?>
-->

這樣的模板檔案,其實就是一個標準的,可以執行的PHP檔案。但是,這樣的PHP檔案,其HTML樣式在DreamWeaver中可以正確的顯示出來,所有的PHP代碼會被看做HTML注釋,而且在輸出的時候,不會輸出出來。比如,上面的檔案在DreamWeaver中,被顯示成:

PHP代碼 複製代碼 代碼如下:Hello,$name!

這樣,在設計頁面的時候,我們就可以藉助DW的可視化介面,進行一些介面的修改,美化等工作。儘管沒有實現完全的代碼和HTML的分離,但至少提供了一種輔助性的設計手段。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.