ホームページ >バックエンド開発 >PHPチュートリアル >ハリー・ポッターと死のh 静的ページを生成するための PHP クラス
コードをコピーします コードは次のとおりです:
class html
{ //html ファイルのディレクトリ (/ なし)
var $rootdir; // HTML ファイルのルート (/ なし):html
var $name; HTML ファイルの保存パス
var $dirname; // 指定されたフォルダー名
var $url; // HTML ファイル情報のソース Web ページのアドレスを取得します
var $time; // HTML ファイル情報を入力する時間
var $dirtype ; //ディレクトリの保存方法:年,月,,,,
var $nametype; //html ファイルの命名方法: name
function html($nametype='name',$dirtype='year',$rootdir='html ' )
{
$this->setvar($nametype,$dirtype,$rootdir);
}
関数 setvar($nametype='name',$dirtype='year',$rootdir='html')
{
$this->rootdir=$rootdir;
$this->dirtype=$nametype;
}
関数 createdir($dir='')
$ this ->dir=$dir?$this->dir;
if (!is_dir($this->dir))
{
$temp =explode('/',$this->dir; );
$cur_dir = '';
for($i=0;$i
{
@mkdir($cur_dir,0777);
}
}
}
}
function getdir($dirname='',$time=0)
{
$this-& gt ;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->ディレクトリ名;
ケース '年':
$this->dir=$this->rootdir.'/'.date("Y",$this->時間);
ケース '月':
$this->dir=$this->rootdir.'/'.date("Y-m",$this->time); 'day':
$this->dir=$this->rootdir.'/'.date("Y-m-d",$this->time);
ブレーク;
}
$this->createdir( );
$this->dir; }
関数 geturlname($url='')
$this->url=$url?$url:$this->url; Basename($this->url);
$filename=explode(".",$filename);
function geturlquery($url='')
{
$this- >url=$url?$url:$this->url;
$durl=parse_url($this->url);
foreach ($durl を $surl として)
{
$gurl=explode("=",$surl);
$eurl[]=$gurl[1] }
return join("_",$eurl); }
関数 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(); $this->nametype)
{
case 'name':
$filename=$this->geturlname().'.htm';
$this->name=$this->dir.'/ '.$ファイル名;
ケース '時間':
$this->name=$this->dir.'/'.$this->time.'
ケース; 'クエリ':
$this->name=$this->dir.'/'.$this->geturlquery().'.htm';
case 'namequery':
$this- >name=$this->dir.'/'.$this->geturlname().'-'.$this->geturlquery().'.htm';
case 'nametime'; :
$this->name=$this->dir.'/'.$this->geturlname().'-'.$this->time.'.htm';
ブレーク
}
$this->名前を返す
}
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; //得得name
$c
///////////////关键步---用ファイル读取$this->url
$c
$fp=@fopen($ this->name,"w") or die("ファイルを開けませんでした".$this->name." !");
if(@fwrite($fp,$content))
return true;
else
return false;
fclose($fp);
}
////////////////以nameは名字生成html
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 ."/".$ファイル名);
}
closedir($handle);
rmdir($file);
trueを返します。
}else{
リンク解除($file);
}
}
}
}
?>
以上は、ハリー・ポッターと死の面を生成する PHP クラスであり、ハリー・ポッターと死の面の内容が含まれており、PHP 教則に興味のある友人の助けになることを望みます。