程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php生成HTML文件的應用和原理筆記

php生成HTML文件的應用和原理筆記

編輯:關於PHP編程

       1.PHP部分文件操作函數。(fopen , fread , filesize , fwrite , fclose)

      2.unlink() , mkdir() 刪除函數。

      -------------------------------------------------------------

      1.PHP部分文件操作函數

      (1)fopen 打開文件函數。 R / W / A

      格式:fonpen(路徑和文件名,打開方式);

      (2)fread 讀取文件內容。

      格式:fread(打開的文件,結束的位置);

      (3)filesize 讀取文件大小,字節為計量單位。

      格式:filesize(路徑和文件名);

      (4)fwrite 寫入文件內容。

      格式:fwrite(路徑和文件名,寫入的內容);

      (5)fclose 關閉打開的文件。

      格式:fclose(路徑和文件名);

      -------------------------------------------------------------

      2.unlink(); mkdir(); 刪除函數

      unlink(); 刪除文件函數

      格式:unlink(路徑和文件);

      mkdir(); 刪除目錄函數

      格式:mkdir(路徑和目錄名);

      -------------------------------------------------------------

      實例操作:

     代碼如下  

    <?php
    $title = "新標題";
    $content = "新內容www.45it.com";

    $fp = fopen("tmp.htm", "r"); //打開文件,以只讀方式。
    $str = fread($fp, filesize("tmp.htm")); //讀取文件內容,格式:fread(打開的文件,結束的位置);。
    $str = str_replace("{title}", $title, $str); //將str變量中的路徑文件內容替換掉重新賦值
    $str = str_replace("{content}", $content, $str);
    fclose($fp); //以上為替換模板的內容。

    $id = "hello";
    $path = $id . '.htm';
    $handle = fopen($path, "w"); //寫入方式打開新聞路徑
    fwrite($handle, $str); //把剛才替換的內容寫進生成的HTML文件
    fclose($handle);
    echo "生成成功";
    ?>

      例,找到一個html生成類

     代碼如下  

    <?php

    // --------------------------------------------------------------------------
    // File name   : html.class.php
    // Description : www.45it.com生成靜態頁面的類
    // Requirement : PHP5
    //
    // Copyright(C), 蟋蟀, 2013, All Rights Reserved.
    //--------------------------------------------------------------------------

    class myHtml{

    //生成html文件路徑
    private $html_dir="./";
    //html文件名稱
    private $html_name;
    //生成html文件的位置名稱
    public  $path;
    //緩存區內容
    private $content;
    //文件句柄
    private $handle;
    //內存指針
    private $accesses;
             //構造函數
    public function __construct($html_dir="",$html_name="")
    {
       $this->accesses++;
      //如果文件路徑不存在建立文件夾
      if(opendir($html_dir)==0)
             {
               mkdir($html_dir);
             }

      $this->html_dir=$html_dir!=""?$html_dir:"./";
      $this->html_name=$html_name!=""?$html_name:substr(basename(__FILE__),0,strrpos(basename(__FILE__),".")).".html";
      $this->path= ($this->html_dir{strlen($this->html_dir)-1}=="/")
         ?($this->html_dir.$this->html_name):($this->html_dir."/".$this->html_name);
      ob_start();

    }
    //析構函數
    public function __destruct()
            {
             $this->accesses--;
              ob_end_clean();
            }
    //生成html頁面
    function tohtml()
    {
    $this->content=ob_get_contents();
    if (is_file ($this->path)){
      @unlink ($this->path);
    }
    $handle = fopen ($this->path,"w");
    if (!is_writable ($this->path)){
      return false;
    }
    if (!fwrite ($handle,$this->content)){
      return false;
    }
    fclose ($handle); //關閉指針
    return $this->path;
    }
    }
    /*
    $html=new myHtml("./","z.htm");
    print "靜態頁面程序";
    $html->tohtml();
    */
    ?>

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved