“這確實不錯”,你也許會想,“我的網站主要就是由大量的靜態頁面構成。現在我可以從所有頁面中刪除它們的公共部分,要更新這些公共部分實在太麻煩了。以后我就可以用模板制作出很容易維護的統 " /> 久久久国产成人精品,精品久久久久久中文字幕202o ,国产三级在线观看视频

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

用PHP制作靜態網站的模板框架(三)

避免頁面元素重復


   “這確實不錯”,你也許會想,“我的網站主要就是由大量的靜態頁面構成。現在我可以從所有頁面中刪除它們的公共部分,要更新這些公共部分實在太麻煩了。以后我就可以用模板制作出很容易維護的統一頁面布局。”但事情并非這么簡單,“大量的靜態頁面”道出了問題的所在。


   請考慮上面的例子。這個例子實際上只有一個example.php頁面,它之所以能夠生成整個網站的所有頁面,是因為它利用了URL中的查詢字符串從數據庫之類的信息源動態地構造出頁面。


   我們之中的大多數人所運行的網站并不一定都有數據庫支持。我們的網站大多數由靜態頁面構成,然后用php在這里、那里加上一些動態功能,比如搜索引擎、反饋表單等。那么,如何在這種網站上應用模板呢?


   最簡單的方法是為每一個頁面復制一份php文件,然后在每一個頁面中把php代碼里代表內容的變量設置成合適的頁面內容。例如,假設有三個頁面,它們分別是主頁(home)、關于(about)和產品(product),我們可以用三個文件分別生成它們。這三個文件的內容都類如:


<?php

// home.php
require('class.FastTemplate.php');
$tpl = new FastTemplate('.');
$tpl->define( array( 'main' => 'main.htm',
'header' => 'header.htm',
'leftnav' => 'leftnav.htm' ) );

$content = "<p>歡迎訪問</p>
<img src="demo.jpg">
<p>希望你能夠喜歡本網站</p>";
$tpl->assign('CONTENT', $content);
$tpl->parse('HEADER', 'header');
$tpl->parse('LEFTNAV', 'leftnav');
$tpl->parse('MAIN', 'main');
$tpl->FastPrint('MAIN');

?>



   顯然,這種方法有三個問題:我們必須為每一個頁面復制這些復雜的、牽涉到模板的php代碼,這與重復公共頁面元素一樣使得頁面難以維護;現在文件又混合了HTML和php代碼;為內容變量賦值將變得非常困難,因為我們必須處理好大量的特殊字符。


   解決這個問題的關鍵就在于分離php代碼和HTML內容,雖然我們不能從文件中刪除所有的HTML內容,但可以移出絕大多數php代碼。

php技術用PHP制作靜態網站的模板框架(三),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久亚洲日本不卡一区二区 | 国语对白精品视频在线观看 | 香港三级午夜理伦三级99 | 伊人色综合久久天天 | 国产精品免费观看视频播放 | 国产视频第一页 | 色久影院 | 亚洲网美女 | 韩国特级一级毛片免费网站 | 色婷婷av777| 好叼操这里只有精品 | 国产成人小视频 | 国产成人无精品久久久久国语 | 一区二区三区鲁丝不卡麻豆 | 怡红院免费全部视频在线视频 | 九月丁香十月婷婷在线观看 | 国产成人精品日本亚洲直接 | 91精品国产9l久久久久 | 国产一级特黄aa级特黄裸毛片 | 国产一二三区在线观看 | 爱爱一区 | 中文乱码精品一区二区三区 | 最新国产福利在线 | 美女很黄很黄的网站 | 一区二区三区鲁丝不卡麻豆 | 久久91精品国产91久久 | se94se欧美 | 久久精品国产91久久综合麻豆自制 | 亚洲激情成人 | 麻豆视频导航 | 中文不卡视频 | 精品久久久久久综合日本 | 天天色影院 | 国产福利二区 | 日韩中文字幕久久久经典网 | 欧美成人精品福利在线视频 | 2021久久精品99精品久久 | 土耳其xxxx性自由视频 | 国产在线一区二区三区四区 | 久久综合视频网站 | 亚洲第一视频在线播放 |