Générer une page statique PHP class_PHP programmation

微波
Libérer: 2023-03-11 21:06:01
original
1094 Les gens l'ont consulté


Copier le code Le code est le suivant :

class html
{
var $dir; //répertoire des htmls (sans/)
var $rootdir; //racine des fichiers html (sans/) :html
var $name; //Chemin de stockage du fichier html
var $dirname; //Nom du dossier spécifié
var $url //Source d'obtention des informations sur le fichier html; adresse
var $time; //Délai de remplissage des informations du fichier html
var $dirtype; //Méthode de stockage du répertoire : année, mois,,,
var $nametype; méthode : nom

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

function setvar($nametype='name',$dirtype='year',$rootdir='html')
{ this->rootdir=$rootdir; 🎜> $this->dirtype=$dirtype;
$this->nametype=$nametype; ='')
{
$this->dir=$dir?$dir:$ this- & gt; dir;

if (! is_dir ($ this- & gt; dir))
0; $ i & lt; count ($ temp); $ i ++)
🎜> @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->d ir=$ this->rootdir
else
$this->dir=$this-> ;rootdir.'/'.$this->dirname;
break
case 'année' :
$this->dir=$this->rootdir.'/'.date( "Y",$cette->fois);
        casser; 

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

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

        $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; 
        pause ; 

        cas 'heure' : 
        $this->name=$this->dir.'/'.$this->time.'.htm'; 
        pause ; 

        case 'requête' : 
        $this->name=$this->dir.'/'.$this->geturlquery().'.htm'; 
        pause ; 

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

        case 'nametime' : 
        $this->name=$this->dir.'/'.$this->geturlname().'-'.$this-> temps.'.htm'; 
        pause ; 

        } 
        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;  //得到name 

        $content=file($this->url) ou die("Échec de l'ouverture de l'url ".$this->url." !");; 

///////////////关键步---用file读取$this->url 

  
        $content=join( "",$contenu); 
        $fp=@fopen($this->name,"w") ou die("Échec de l'ouverture du fichier ".$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()
* Supprimer le répertoire
* @param $nom du répertoire du fichier (sans /)
* @return
*/ 
     function deledir($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 ; 
            }autre{ 
                dissocier ($ fichier); 
            } 
        } 
    } 


?>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!