最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php heredoc和phpwind的模板技術(shù)使用方法小結(jié)

 更新時間:2008年03月28日 22:58:45   作者:  
Heredoc技術(shù),在正規(guī)的PHP文檔中和技術(shù)書籍中一般沒有詳細講述,只是提到了這是一種Perl風格的字符串輸出技術(shù)。但是現(xiàn)在的一些論壇程序,和部分文章系統(tǒng),都巧妙的使用heredoc技術(shù),來部分的實現(xiàn)了界面與代碼的準分離,phpwind就是一個典型的例子。
在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結(jié)束符可以自己規(guī)定,在Phpwind,使用了“EOT”來結(jié)束。但是需要注意的是,這個END必須是在一行的開頭才能有效,這其實是Heredoc技術(shù)的一個局限性(因為heredoc可以自定義結(jié)束符,所以引入了這個問題),在下面會提到。

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

為了讓heredoc的內(nèi)容能被DreamWeaver這樣的編輯器正確識別,以實現(xiàn)“所見即所得的”的網(wǎng)頁設(shè)計,需要在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;     
?>     
-->    

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

PHP代碼
復制代碼 代碼如下:

Hello,$name!     


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

相關(guān)文章

最新評論

敖汉旗| 福清市| 屯门区| 安远县| 西乌| 榆林市| 洪泽县| 莱阳市| 蓝山县| 罗田县| 宜阳县| 东乡县| 泰州市| 威海市| 葫芦岛市| 长乐市| 德州市| 文登市| 博乐市| 郁南县| 卢氏县| 四子王旗| 页游| 平原县| 承德市| 富顺县| 普陀区| 凌云县| 临沧市| 衡阳市| 固阳县| 大姚县| 城固县| 楚雄市| 观塘区| 班玛县| 外汇| 抚远县| 平乐县| 永顺县| 杨浦区|