php 生成html文件内容,php生成html文件方法_PHP教程

下面一段生成html文件类是一款用php的fopen生成html 静态文件的方法好,好了费话不说多了我们来看看吧。

下面一段生成html文件类是一款用php的fopen生成html 静态文件的方法好,好了费话不说多了我们来看看吧。

class html

{

var $dir;

var $rootdir;

var $name;

var $dirname;

var $url;

var $time;

var $dirtype;

var $nametype;

function html($nametype='name',$dirtype='year',$rootdir='html')

{

$this->setvar($nametype,$dirtype,$rootdir);

}

function setvar($nametype='name',$dirtype='year',$rootdir='html')

{

$this->rootdir=$rootdir;

$this->dirtype=$dirtype;

$this->nametype=$nametype;

}

function createdir($dir='')

{

$this->dir=$dir?$dir:$this->dir;

if (!is_dir($this->dir))

{

$temp = explode('/',$this->dir);

$cur_dir = '';

for($i=0;$i {

$cur_dir .= $temp[$i].'/';

if (!is_dir($cur_dir))

{

@mkdir($cur_dir,0777);

}

}

}

}

function getdir($dirname='',$time=0)

{

$this->time=$time?$time:$this->time;

$this->dirname=$dirname?$dirname:$this->dirname;

switch($this->dirtype)

{

case 'name':

if(empty($this->dirname))

$this->dir=$this->rootdir;

else

$this->dir=$this->rootdir.'/'.$this->dirname;

break;

case 'year':

$this->dir=$this->rootdir.'/'.date("Y",$this->time);

break;

case 'month':

$this->dir=$this->rootdir.'/'.date("Y-m",$this->time);

break;

case 'day':

$this->dir=$this->rootdir.'/'.date("Y-m-d",$this->time);

break;

}

$this->createdir();

return $this->dir;

}

function geturlname($url='')

{

$this->url=$url?$url:$this->url;

$filename=basename($this->url);

$filename=explode(".",$filename);

return $filename[0];

}

function geturlquery($url='')

{

$this->url=$url?$url:$this->url;

$durl=parse_url($this->url);

$durl=explode("&",$durl[query]);

foreach($durl as $surl)

{

$gurl=explode("=",$surl);

$eurl[]=$gurl[1];

}

return join("_",$eurl);

}

function getname($url='',$time=0,$dirname='')

{

$this->url=$url?$url:$this->url;

$this->dirname=$dirname?$dirname:$this->dirname;

$this->time=$time?$time:$this->time;

$this->getdir();

switch($this->nametype)

{

case 'name':

$filename=$this->geturlname().'.htm';

$this->name=$this->dir.'/'.$filename;

break;

case 'time':

$this->name=$this->dir.'/'.$this->time.'.htm';

break;

case 'query':

$this->name=$this->dir.'/'.$this->geturlquery().'.htm';

break;

case 'namequery':

$this->name=$this->dir.'/'.$this->geturlname().'-'.$this->geturlquery().'.htm';

break;

case 'nametime':

$this->name=$this->dir.'/'.$this->geturlname().'-'.$this->time.'.htm';

break;

}

return $this->name;

}

function createhtml($url='',$time=0,$dirname='',$htmlname='')

{

$this->url=$url?$url:$this->url;

$this->dirname=$dirname?$dirname:$this->dirname;

$this->time=$time?$time:$this->time;

if(empty($htmlname))

$this->getname();

else

$this->name=$dirname.'/'.$htmlname;

$content=file($this->url) or die("Failed to open the url ".$this->url." !");;

$content=join("",$content);

$fp=@fopen($this->name,"w") or die("Failed to open the file ".$this->name." !");

if(@fwrite($fp,$content))

return true;

else

return false;

fclose($fp);

}

function deletehtml($url='',$time=0,$dirname='')

{

$this->url=$url?$url:$this->url;

$this->time=$time?$time:$this->time;

$this->getname();

if(@unlink($this->name))

return true;

else

return false;

}

/**

* function::deletedir()

* 删除目录

* @param $file 目录名(不带/)

* @return

*/

function deletedir($file)

{

if(file_exists($file))

{

if(is_dir($file))

{

$handle =opendir($file);

while(false!==($filename=readdir($handle)))

{

if($filename!="."&&$filename!="..")

$this->deletedir($file."/".$filename);

}

closedir($handle);

rmdir($file);

return true;

}

else

{

unlink($file);

}

}

}

}

http://www.bkjia.com/PHPjc/445042.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445042.htmlTechArticle下面一段生成html文件类是一款用php的fopen生成html 静态文件的方法好,好了费话不说多了我们来看看吧。 下面一段生成html文件类是一款用...

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Php 生成静态html文件 总结有如下三种方法 1,下面使用模版的一个方法! <?php $fp = fopen ("templets.html","a"); if ($fp){ $fup = fread ($fp,filesize("templets.html")); $fp2 = fopen ("html.shtml","w"); if ($fwrite ($fp2,$fup)){ $fclose ($fp); $fcolse ($fp2); die ("写入模板成功"); } else { fclose ($fp); die ("写入模板失败!"); } } ?> 简单的将模板写进一个文件中存为html. 2,按时间生成html文件名 <? $content = "这是一个以日期时间为文件名的静态生成网页的测试文件文件名格式一般为<font color=#ff0000>年月日时分秒.html</font>"; $date = date('YmdHis'); $fp = fopen (date('YmdHis') . '.html',"w");//本函数可用来打开本地或者远端的文件 'w' 开文件方式为写入,文件指针指到开始处,并将原文件的长度设为 0。若文件不存在,则建立新文件。 if (fwrite ($fp,$content)){//格式是.int fwrite(int fp(文件名), string string(内容), int [length](长度));本函数将字符串 string 写入文件资料流的指针 fp 上。若有指定长度 length,则会写入指定长度字符串,或是写到字符串结束。 fclose ($fp);//函数用来关闭已经打开的文件的指针 fp。成功返回 true,失败则返回 false。 die ("写入模板成功"); } else { fclose ($fp); die ("写入模板失败!"); } echo ($content); ?> 3,下面为转换文件名的一个方法 <?php $s_fname = "93e.php"; $o_fname = "93e.htm"; ob_end_clean(); ob_start(); include($s_fname); $length = ob_get_length(); $buffer = ob_get_contents(); $buffer = eregi_replace("r","",$buffer); ob_end_clean(); $fp = fopen($o_fname,"w+"); fwrite($fp,$buffer); fclose($fp); ?> 这样就可以把 93e.php转化为静态的HTML文件了 要注意的是待转换的文件里不能有 ob_end_clean();和 ob_start();语句。 且目录要有写权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值