次の段落では、HTML ファイル クラスを生成します。これは、PHP の fopen を使用して HTML 静的ファイルを生成する方法です。それでは、早速見ていきましょう。
次の段落では、HTML ファイル クラスを生成します。これは、PHP の fopen を使用して HTML 静的ファイルを生成する方法です。
クラスhtml
{
var $dir;
var $name;
var $dirname;
var $url;
var $time;
var $dirtype;
関数 html ($nametype='name',$dirtype='year',$rootdir='html') {
}
関数 createdir($dir='')
$this->dir=$dir?$dir: $ this-> dir; $time=0)
$this->time=$time?$time:$this->time;
$this->dirname=$dirname ; dir =$ this->rootdir; ; rootdir.'/'.date("Y-m",$this->time); date("Y-m-d",$this->time);
name($url= '')
{) $ This - & GT; $ URL? $ URL: $ This-& GT; URL;
$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->gt;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) または die("URL を開けませんでした ".$this->url ." !");;
$content=join("",$content);
$fp=@fopen($this->name,"w") または die("ファイルを開けませんでした ".$ 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($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);
}
}
}
}
www.bkjia.com