当前位置:首页 > PHP教程 > php应用 > 列表

php生成HTML文件的应用和原理笔记

发布:smiling 来源: PHP粉丝网  添加日期:2014-02-10 15:50:24 浏览: 评论:0 

生成html页面我们需要使用到的文件系统操作函数包括有fopen,fread,filesize,fwrite,fclose了,这些是基本要用到了,还像删除,创建目录之类的,下面我们来看看.

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(路径和目录名);

实例操作,代码如下:

  1. <?php 
  2. $title = "新标题"
  3. $content = "新内容www.phpfensi.com"
  4. $fp = fopen("tmp.htm""r"); //打开文件,以只读方式。 
  5. $str = fread($fpfilesize("tmp.htm")); //读取文件内容,格式:fread(打开的文件,结束的位置);。 
  6. $str = str_replace("{title}"$title$str); //将str变量中的路径文件内容替换掉重新赋值 
  7. $str = str_replace("{content}"$content$str); 
  8. fclose($fp); //以上为替换模板的内容。 
  9. $id = "hello"
  10. $path = $id . '.htm'
  11. $handle = fopen($path"w"); //写入方式打开新闻路径 
  12. fwrite($handle$str); //把刚才替换的内容写进生成的HTML文件 
  13. fclose($handle); 
  14. echo "生成成功"
  15. ?> 

例,找到一个html生成类,代码如下:

  1. <?php 
  2. // -------------------------------------------------------------------------- 
  3. // File name   : html.class.php 
  4. // Description : www.phpfensi.com生成静态页面的类 
  5. // Requirement : PHP5 
  6. // 
  7. // Copyright(C), 蟋蟀, 2013, All Rights Reserved. 
  8. //-------------------------------------------------------------------------- 
  9. class myHtml{ 
  10. //生成html文件路径 
  11. private $html_dir="./"
  12. //html文件名称 
  13. private $html_name
  14. //生成html文件的位置名称 
  15. public  $path
  16. //缓存区内容 
  17. private $content
  18. //文件句柄 
  19. private $handle
  20. //内存指针 
  21. private $accesses
  22.          //构造函数 
  23. public function __construct($html_dir="",$html_name=""
  24.    $this->accesses++; 
  25.   //如果文件路径不存在建立文件夹 
  26.   if(opendir($html_dir)==0) 
  27.          { 
  28.            mkdir($html_dir); 
  29.          } 
  30.   $this->html_dir=$html_dir!=""?$html_dir:"./"
  31.   $this->html_name=$html_name!=""?$html_name:substr(basename(__FILE__),0,strrpos(basename(__FILE__),".")).".html"
  32.   $this->path= ($this->html_dir{strlen($this->html_dir)-1}=="/"
  33.      ?($this->html_dir.$this->html_name):($this->html_dir."/".$this->html_name); 
  34.   ob_start(); 
  35. //析构函数 
  36. public function __destruct() 
  37.         { 
  38.          $this->accesses--; 
  39.           ob_end_clean(); 
  40.         } 
  41. //生成html页面 
  42. function tohtml() 
  43. $this->content=ob_get_contents(); 
  44. if (is_file ($this->path)){ 
  45.   @unlink ($this->path); 
  46. $handle = fopen ($this->path,"w"); 
  47. if (!is_writable ($this->path)){ 
  48.   return false; 
  49. if (!fwrite ($handle,$this->content)){ 
  50.   return false; 
  51. fclose ($handle); //关闭指针 
  52. return $this->path; 
  53. /* 
  54. $html=new myHtml("./","z.htm"); 
  55. print "静态页面程序"; 
  56. $html->tohtml(); 
  57. */ 
  58. ?> 

Tags: 生成 HTML 文件 原理笔记

分享到: