分離功能和布局的基本思想就是使得這兩組人能夠各自編寫和使用獨立的一組文件:程序員只需關心那些只包含PHP代碼的文件,無需關心頁面的外觀;而頁面設計人員可以用自己最熟悉的可視化編輯器設計頁面布局,無需擔心破壞任何嵌入到頁面的PHP代碼。 如果你曾經(jīng)看過幾個關于PHP模板的教程,那么你應該已經(jīng)明白模板的工作機制。考慮一個簡單的頁面局部:頁面的上方是頁頭,左邊是導航條,其余部分是內(nèi)容區(qū)域。 可以看出頁面如何由這些模板構(gòu)造而成:main模板控制著整個頁面的布局;header模板和leftnav模板控制著頁面的公共元素。花括號“{}”里面的標識符是內(nèi)容占位符。使用模板最主要的好處在于界面設計者能夠按照自己的意愿編輯這些文件,比如設置字體、修改顏色和圖形,或者完全地改變頁面的布局。界面設計者可以用任何普通HTML編輯器或者可視化工具編輯這些頁面,因為這些文件都只包含HTML代碼,沒有任何PHP代碼。 PHP代碼全部保存到單獨的文件中,這個文件也就是由頁面URL實際調(diào)用的文件。Web服務器通過PHP引擎解析該文件,然后把結(jié)果返回給瀏覽器。一般地,PHP代碼總是動態(tài)地生成頁面內(nèi)容,比如查詢數(shù)據(jù)庫或者執(zhí)行某種計算等。下面是一個例子: // 此處的PHP代碼設置 $content使其包含合適的頁面內(nèi)容 $tpl-assign('CONTENT', $content); $tpl-parse('HEADER', 'header'); $tpl-parse('LEFTNAV', 'leftnav'); $tpl-parse('MAIN', 'main'); $tpl-FastPrint('MAIN'); ?這里我們使用的是流行的FastTemplate模板類,但其基本思路對于其他許多模板類來說都一樣。首先你實例化一個類,告訴它到哪里去尋找模板文件以及哪一個模板文件與頁面的哪部分對應;接下來是生成頁面內(nèi)容,把結(jié)果賦予內(nèi)容的標識符;然后,依次解析各個模板文件,模板類將執(zhí)行必要的替換操作;最后把解析結(jié)果輸出到瀏覽器。 這個文件完全由PHP代碼構(gòu)成,不包含任何HTML代碼,這是它最大的優(yōu)點。現(xiàn)在,PHP程序員可以集中精力編寫生成頁面內(nèi)容的代碼,而不必為了如何生成HTML去正確地格式化最終頁面而擔心。 很容易看出采用模板還有第二個好處。如上例所示,頁面左邊的導航條單獨保存為一個文件,我們只需編輯這一個模板文件就可以改變網(wǎng)站所有頁面左邊的導航條。 避免頁面元素重復 “這確實不錯”,你也許會想,“我的網(wǎng)站主要就是由大量的靜態(tài)頁面構(gòu)成。現(xiàn)在我可以從所有頁面中刪除它們的公共部分,要更新這些公共部分實在太麻煩了。以后我就可以用模板制作出很容易維護的統(tǒng)一頁面布局。”但事情并非這么簡單,“大量的靜態(tài)頁面”道出了問題的所在。 請考慮上面的例子。這個例子實際上只有一個example.php頁面,它之所以能夠生成整個網(wǎng)站的所有頁面,是因為它利用了URL中的查詢字符串從數(shù)據(jù)庫之類的信息源動態(tài)地構(gòu)造出頁面。 我們之中的大多數(shù)人所運行的網(wǎng)站并不一定都有數(shù)據(jù)庫支持。我們的網(wǎng)站大多數(shù)由靜態(tài)頁面構(gòu)成,然后用PHP在這里、那里加上一些動態(tài)功能,比如搜索引擎、反饋表單等。那么,如何在這種網(wǎng)站上應用模板呢? 最簡單的方法是為每一個頁面復制一份PHP文件,然后在每一個頁面中把PHP代碼里代表內(nèi)容的變量設置成合適的頁面內(nèi)容。例如,假設有三個頁面,它們分別是主頁(home)、關于(about)和產(chǎn)品(product),我們可以用三個文件分別生成它們。這三個文件的內(nèi)容都類如: 希望你能夠喜歡本網(wǎng)站"; $tpl-assign('CONTENT', $content); $tpl-parse('HEADER', 'header'); $tpl-parse('LEFTNAV', 'leftnav'); $tpl-parse('MAIN', 'main'); $tpl-FastPrint('MAIN'); ?顯然,這種方法有三個問題:我們必須為每一個頁面復制這些復雜的、牽涉到模板的PHP代碼,這與重復公共頁面元素一樣使得頁面難以維護;現(xiàn)在文件又混合了HTML和PHP代碼;為內(nèi)容變量賦值將變得非常困難,因為我們必須處理好大量的特殊字符。 解決這個問題的關鍵就在于分離PHP代碼和HTML內(nèi)容,雖然我們不能從文件中刪除所有的HTML內(nèi)容,但可以移出絕大多數(shù)PHP代碼。靜態(tài)網(wǎng)站的模板框架: ob_end_clean(); $tpl-assign('CONTENT', $content); $tpl-parse('HEADER', 'header'); $tpl-parse('LEFTNAV', 'leftnav'); $tpl-parse('MAIN', 'main'); $tpl-FastPrint('MAIN'); } ?ageStart函數(shù)首先創(chuàng)建并設置了一個模板實例,然后啟用輸出緩存。此后,所有來自頁面本身的HTML內(nèi)容都將進入緩存。pageFinish函數(shù)取出緩存中的內(nèi)容,然后在模板對象中指定這些內(nèi)容,最后解析模板并輸出完成后的頁面。 這就是整個模板框架全部的工作過程了。

十年的麗江網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調(diào)整麗江建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“麗江網(wǎng)站設計”,“麗江網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
.asp是模版?這是asp文件
.php是php文件,模版是html格式的文件,如.html .htm .dwt .lbi .xhtml .wml
這些都可以用dw打開
php的環(huán)境有l(wèi)amp,wamp,或者ngnix替換apache
數(shù)據(jù)庫管理跟access不同,mysql可以用phpMyAdmin,或者navicat等工具修改,很方便的
你可以建立一個數(shù)據(jù)庫存放模板風格,然后在用戶表中為每個用戶設置一個模板 風格。
當加載此用戶的頁面時候,就檢索該用戶對應的模板風格,然后通過模板數(shù)據(jù)庫獲取相應的模板。
平常我們做一個交互式網(wǎng)站,一定會關注兩個主要的問題,就是美工和程序。這也是一個網(wǎng)站在建設中拋開其內(nèi)容之后最關鍵的要素。
通常有兩種方式來協(xié)調(diào)美工和程序之間的關系:
1.先做好美工頁面,然后由程序員直接在美工頁面的Html文件中嵌入ASP、jsp、PHP等程序代碼。
2.美工和程序同時進行,但這時因為沒有頁面框架,程序只能做出一些關鍵代碼,雙方完成后再進行一次美工頁面和程序代碼的嵌入合成。
在實際的網(wǎng)站建設過程中,由于人員、進度等環(huán)境的限制,大家通常會混合地使用上面兩種協(xié)調(diào)方式。然而這兩種方法都有不足之處:
1. 效率不高。兩者協(xié)調(diào)不好可能產(chǎn)生等待、重復代碼調(diào)試步驟等現(xiàn)象;
2. 調(diào)試不暢。由于程序代碼最終需要嵌入在HTML頁面中,代碼的嵌入、調(diào)試、糾錯都比較繁瑣;
3. 維護不便。一旦美工設計需要修改,如網(wǎng)站改版,那么所有程序和HTML代碼混合頁面都需要重寫;
如果你正在使用PHP程序建設網(wǎng)站,那么PHP的模板技術(shù)會比較圓滿地解決上述問題。
那么什么是PHP的模板技術(shù)?PHP模板即PHPlib的Template技術(shù),是PHPLIB程序庫中的一個主要模塊之一,發(fā)展自Perl的Template。而PHPLIB則是在PHP上的一個擴展,提供了很多類庫,能夠方便地實現(xiàn)一些基本功能如用戶認證,數(shù)據(jù)庫封裝等。
現(xiàn)在PHP模板技術(shù)很多,不過建議你學習smarty,畢竟是官方的東西!
smarty學習很簡單的,你去下載一個smarty手冊,對照著學,基本上二天就可以學會了!
這是一個用模板生成HTML的實例,自己摸索一下.
?php
require('smarty/Smarty.class.php');
$t = new Smarty;
$t-assign("title","Hello World!");
$content = $t-fetch("templates/index.htm");
//這里的 fetch() 就是獲取輸出內(nèi)容的函數(shù),現(xiàn)在$content變量里面,就是要顯示的內(nèi)容了
$fp = fopen("archives/2005/05/19/0001.html", "w");
fwrite($fp, $content);
fclose($fp);
?
什么是PHP...
PHP是一個基于服務端來創(chuàng)建動態(tài)網(wǎng)站的腳本語言,您可以用PHP和HTML生成網(wǎng)站主頁。當一個訪問者打開主頁時,服務端便執(zhí)行PHP的命令并將執(zhí)行結(jié)果發(fā)送至訪問者的瀏覽器中,這類似于ASP和CoildFusion,然而PHP和他們不同之處在于PHP開放源碼和跨越平臺,PHP可以運行在WINDOWS NT和多種版本的UNIX上。它不需要任何預先處理而快速反饋結(jié)果,它也不需要mod_perl的調(diào)整來使您的服務器的內(nèi)存映象減小。PHP消耗的資源較少,當PHP作為Apache Web服務器一部分時,運行代碼不需要調(diào)用外部二進制程序,服務器不需要承擔任何額外的負擔。
網(wǎng)站標題:php類數(shù)據(jù)網(wǎng)頁模板,php和mysql網(wǎng)站模板
當前路徑:http://chinadenli.net/article47/dsgspej.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序、外貿(mào)建站、軟件開發(fā)、做網(wǎng)站、網(wǎng)頁設計公司、虛擬主機
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)