搜尋
首頁php教程php手册应用PHP标签模板实现什么任务

应用PHP标签模板实现什么任务

Jun 13, 2016 am 11:10 AM
php什麼任務使用實現應用開發我們科技標籤範本程式

我们在对

1、模板的由来

在没有模板技术之前,使用PHP开发程序,通常都是php代码和html混编在一起。比如说新闻列表,很可能就是一个newslist.php页面,结构如下:

  1.  ?   
  2. //从数据库中读取出要显示的新闻记录   
  3. ?>   
  4.  html>   
  5.  head>……..   
  6.  /head>   
  7.  body>   
  8.  ?   
  9. While ($news = mysql
    _fetch_array
    ($result)) {   
  10. ?>   
  11.  !--输出新闻标题 -- >   
  12.  ?   
  13. }   
  14. ?>   
  15.  /body>   
  16.  /html>   

那么这样有什么问题呢?首先,不利于分工合作。一般来说,都会由程序员来写代码,美工人员设计页面。那么在这种方式中,程序员必须等待美工人员把界面设计 好才能开始工作。也就是说程序员和美工的工作是不能同步的。其次、不利于维护,可维护性差。比如说程序固定后,要修改界面,那么必须由美工修改后,程序员 再重新添加。最后,程序结构混乱,可读性差。HTML和PHP混编在一起,一旦程序一多,就会变的非常的凌乱。

理解模板原理——使用PHP标签模板

模板技术正是为了解决这些问题而出现的,为了解决这些问题,最早出现的是使用PHP标签模板。
首先,我们要明白模板的目的是什么。模板主要要实现几个任务呢?

第一、美工和程序的分离。更确切的说法是获取数据和显示数据的分离。

第二、分工。良好的分工合作。

比如说新闻列表,如果使用PHP标签模板,我们就可以把新闻列表的操作分成两部分:

1、 getnews.php 负责从数据库中读取数据到数组$news中,不关心$news是如何显示的。
2、 Shownews.php 负责把$news数组输出成HTML页面。而它不需要理会$news是从哪里来的。

好,这样,我们就实现了美工和程序的分离,达到了我们的初步目的,但是如何把这两个页面联合起来,并实现listnews.php的功能呢?

这就需要另外一个页面listnews.php,来负责把“美工(显示数据)”和“程序员(获取数据)”连接起来。应该说这个页面就是很简单了。

假设getnews.php的代码如下:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?   </span></span></span></li>
<li>
<span>$</span><span class="attribute">news</span><span> =“新闻列表”;</span>
</li>
<li><span>//实际中应该是从数据库中读取出来的。   </span></li>
<li class="alt">
<span class="tag">?></span><span>   </span>
</li>
<li><span>Shownesw.php的代码如下:   </span></li>
<li class="alt"><span class="tag"><span> </span><span class="tag-name">html</span><span class="tag">></span><span>   </span></span></li>
<li><span class="tag"><span> </span><span class="tag-name">head</span><span class="tag">></span><span>   </span></span></li>
<li class="alt"><span class="tag"><span> </span><span class="tag-name">title</span><span class="tag">></span><span>显示新闻</span><span class="tag"><span> /title</span><span class="tag">></span><span>   </span></span></span></li>
<li><span class="tag"><span> /head</span><span class="tag">></span><span>   </span></span></li>
<li class="alt"><span class="tag"><span> </span><span class="tag-name">body</span><span class="tag">></span><span>   </span></span></li>
<li><span class="tag"><span> ?=$news</span><span class="tag">?></span><span>   </span></span></li>
<li class="alt"><span class="tag"><span> /body</span><span class="tag">></span><span>   </span></span></li>
<li><span class="tag"><span> /html</span><span class="tag">></span><span>   </span></span></li>
</ol>

那么,这个联合页面listnews.php的代码就很简单了
 

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?   </span></span></span></li>
<li><span>Include(‘getnews.php');</span></li>
<li><span>//获取数据   </span></li>
<li class="alt"><span>Include(‘shownesw.php');</span></li>
<li class="alt"><span>//显示数据   </span></li>
<li>
<span class="tag">?></span><span>   </span>
</li>
</ol>

总结

使用PHP标签模板系统,能够很好的实现美工和程序的分离,同时方便程序员和美工人员的分工合作,比如在上面的例子中shownews.php由美工人 员来维护,getnews.php由程序人员来维护。而listnews.php就可以由系统设计人员来维护了。当然这中间需要增加一些约定的文档。

事实上,这个简单的例子也说明了最基本的MVC模型。其中M,模型,也就是负责读取数据,相当于我们的getnews.php。V,就是试图,用来显示数据,也就对应了shownews.php。最后是控制器C,对应我们的listnews.php


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器