国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

關于PHP模板技術的基本概念

2024-05-04 23:04:53
字體:
來源:轉載
供稿:網友
  • 網站運營seo文章大全
  • 提供全面的站長運營經驗及seo技術!
  •   如果你正在設計一個交互式網站,你一定會關注兩個主要的問題,就是美工和程序。這也是一個網站在建設中拋開其內容之后最關鍵的要素。通常有兩種方式來協調美工和程序之間的關系:

      1.先做好美工頁面,然后由程序員直接在美工頁面的html文件中嵌入asp、jsp、php等程序代碼。

      2.美工和程序同時進行,但這時因為沒有頁面框架,程序只能做出一些關鍵代碼,雙方完成后再進行一次美工頁面和程序代碼的嵌入合成。

      在實際的網站建設過程中,由于人員、進度等環境的限制,大家通常會混合地使用上面兩種協調方式。然而這兩種方法都有不足之處:

      1. 效率不高。兩者協調不好可能產生等待、重復代碼調試步驟等現象;

      2. 調試不暢。由于程序代碼最終需要嵌入在html頁面中,代碼的嵌入、調試、糾錯都比較繁瑣;

      3. 維護不便。一旦美工設計需要修改,如網站改版,那么所有程序和html代碼混合頁面都需要重寫;

      如果你正在使用php程序建設網站,那么恭喜你,php的模板技術會比較圓滿地解決上述問題。

      那么什么是php的模板技術?php模板即phplib的template技術,是phplib程序庫中的一個主要模塊之一,發展自perl的template。而phplib則是在php上的一個擴展,提供了很多類庫,能夠方便地實現一些基本功能如用戶認證,數據庫封裝等。我們可以在phplib.netuse.de上下載到其最新版本。要使用php模板,只需在phplib的程序包中解開template.inc文件,并放到我們的php程序能夠調用的目錄里。

      剝開神秘的面紗,模板技術的核心概念簡單得令人心跳:要將你的美工頁面指定為模板文件,只需將頁面中活動的內容如數據庫輸出,用戶交互等部分定義成形式為{variable}的變量放在模板文件中相應的位置,當用戶瀏覽時,由php程序文件打開該模板文件,將模板文件中定義的變量進行替換,當然,替換成對應的數據庫輸出或者用戶交互等動態生成內容,舉例如下:

      定義模板文件:mytemplate.html

    mytemplte.html的內容為:

      <html>

      .....

      <body>

      ...

      ...

      </body>

      </html>

      我們可以看到,事實上模板文件就是一個普通的html文件,它包含了你所想要的版面、美工等要素,而內部的活動內容則以變量的形式存在,并等待被替換。顯然,模板文件直接被瀏覽是毫無意義的,因為它不包含任何php程序,所有的內容都是“死”的,現在我們來看看,怎樣來調用模板,讓它“活動”起來。

      假設我們在test.php文件中使用了上述模板,當用戶瀏覽test.php文件時,test.php文件處理過程如下:

      test.php

      <?php

      mydate=date("y年m月d日"); //處理好變量的值

      include("template.inc"); //調入將模板程序模塊

      mytemp = new template("/你的模板文件所在目錄/");

      //創建一個模板實例mytemp,如果模板就在當前目錄,那么使用"."就可以

      mytemp->set_file("myfilehandle","mytemplate.html");

      //設置myfilehandle文件句柄指向我們所要調用的模板文件mytemplate.html

      mytemp->set_var("today", mydate);

      //調用模板的set_var方法,設置模板中的變量today值為$mydate

      mytemp->parse("myoutput","myfilehandle");

      //調用模板的parse方法,對myfilehandle文件句柄所指向的模板文件進行分析,替換其中相應變量

      //并把替換結果即完整的html文件內容保存在字串變量myoutput中

      mytemp->p("myoutput");

      // 打印輸出結果字串變量myoutput的值

      ?>

      就是這么簡單,模板技術很輕松地把網站設計分離成了清晰的美工和程序兩個方面,并把他們的成果簡單方便地結合了起來。如美工設計需要修改,那么我們只要記住原模板中各個變量名,把他們插入到新模板中對應位置就可以了。真的很輕松!另一方面,在php程序中基本沒有了php腳本和html語法混合的現象,很大地提高了php系統的執行效率,而且如果是數據庫等一些費時的操作,現在可以很及時地關閉數據庫,釋放資源,這樣也在一定程度上提高了php和相關系統的資源使用效率。
    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 桦甸市| 措勤县| 陵水| 北川| 塘沽区| 荆州市| 资阳市| 都昌县| 九龙城区| 高州市| 化德县| 宜春市| 旬邑县| 吉木乃县| 彭水| 博爱县| 平度市| 随州市| 天镇县| 金塔县| 清新县| 呈贡县| 兰西县| 建瓯市| 永清县| 南城县| 札达县| 西藏| 襄汾县| 孟津县| 涟源市| 伊川县| 瓦房店市| 祁门县| 鸡东县| 甘洛县| 涞水县| 霞浦县| 任丘市| 宁海县| 长葛市|