秋風(fēng)的蕭瑟 又見湖邊木葉飛

          歡迎來到梁良 | LonBlog,這里記錄下了我生活點點滴滴。

          [ZT]用PHP輸出靜態(tài)頁面的兩種方法

                   用PHP輸出靜態(tài)頁面的方法,就我所知道的,有2種,一種是利用模板技術(shù),另一種是用ob系列函數(shù)。兩種方法,看起來都差不多,但是實際上,卻是不同的。

          第一種:利用模板。目前PHP的模板可以說是很多了,有功能強大的smarty,還有簡單易用的smarttemplate等。它們每一種模板,都有一個獲取輸出內(nèi)容的函數(shù)。我們生成靜態(tài)頁面的方法,就是利用了這個函數(shù)。用這個方法的優(yōu)點是,代碼比較清晰,可讀性好。

          這里我用smarty做例子,說明如何生成靜態(tài)頁

          <?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);
          ?>
          第二種方法:利用ob系列的函數(shù)。這里用到的函數(shù)主要是 ob_start(), ob_end_flush(), ob_get_content(),其中ob_start()是打開瀏覽器緩沖區(qū)的意思,打開緩沖后,所有來自PHP程序的非文件頭信息均不會發(fā)送,而是保存在內(nèi)部緩沖區(qū),直到你使用了ob_end_flush().而這里最重要的一個函數(shù),就是ob_get_contents(),這個函數(shù)的作用是獲取緩沖區(qū)的內(nèi)容,相當于上面的那個fetch(),道理一樣的。代碼:

          <?php
          ob_start();
          echo "Hello World!";
          $content = ob_get_contents();//取得php頁面輸出的全部內(nèi)容
          $fp = fopen("archives/2005/05/19/0001.html", "w");
          fwrite($fp, $content);
          fclose($fp);
          ?>


          本文地址: http://www.vxxp.com/archives/29.html

          posted on 2010-06-09 13:43 梁良 閱讀(236) 評論(0)  編輯  收藏 所屬分類: PHP

          <2010年6月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導(dǎo)航

          公告

              歡迎光臨

          常用鏈接

          隨筆分類

          隨筆檔案

          相冊

          .我的網(wǎng)站.

          友情博客

          開源社區(qū)

          科技博客

          資料網(wǎng)站

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          Powered by:
          LonLeung
          Copyright © 梁良

          本頁生成時間:毫秒

          主站蜘蛛池模板: 丹东市| 奎屯市| 额敏县| 河东区| 西青区| 许昌市| 新沂市| 乌拉特前旗| 稷山县| 齐河县| 尼勒克县| 高尔夫| 上杭县| 周口市| 汪清县| 正蓝旗| 新密市| 淮阳县| 大余县| 宁波市| 墨竹工卡县| 商洛市| 儋州市| 奉化市| 吐鲁番市| 新疆| 育儿| 德格县| 琼海市| 民县| 德江县| 桐庐县| 天峨县| 专栏| 清流县| 双桥区| 大理市| 泾川县| 融水| 广灵县| 南开区|