ホームページ  >  記事  >  バックエンド開発  >  PHP 静的クラス_PHP チュートリアル

PHP 静的クラス_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 16:00:36814ブラウズ

コードをコピーします コードは次のとおりです:
class Shtml
{
var $DataSource;

var $fileName;
{
$this->ファイル名=$ファイル名;
$this->ハンドル=false;
$this->DataSource = array() ;
$this->Dir = ""
}

/// <説明>
/// データ ソースをバインドします。パラメータは配列です。
///
function BindData($arr)
{
$this->DataSource = $arr;
}

/// <説明>
/// ファイルの保存パスを設定します。
///
function SetDir($dir)
{
$this->Dir = $dir; }
function SetFileName($fileName)
{
return $this->fileName= $ファイル名;
}

関数 GetMod()
{
return $this->mod;
}
function SetMod($mod)
{
return $this->mod=$mod; }
関数 Open ( )
{
if(substr($this->fileName,0,1)=="/")
$this->fileName = $_SERVER['DOCUMENT_ROOT']
if ($this->handle=fopen($this->fileName, $this->mod))
return $this->handle;
else
return false
}
function Close()
{
return fclose($this->handle);
}
function Write($content)
{
return fwrite($this->handle,$content);
}
function MkDir($pathname)
{
$ currentPath="";
str_replace("","/",$pathname);
$pathArr = split("/",$pathname); //絶対パスを使用パス
{
$currentPath = $_SERVER['DOCUMENT_ROOT']
}
else
{
$currentPath = $_SERVER['DOCUMENT_ROOT'] . dirname($_SERVER['PHP_SELF']) ; i=0; $i if($pathArr[$i]=="")
else
if(is_dir($currentPath . "/" . $ pathArr[$i]))
$currentPath = $currentPath . "/" . $pathArr[$i];
else
mkdir($currentPath = $currentPath . "/" . $pathArr[$i]);
}

/// <説明>
/// 静的ファイルを生成します。  
///   
関数 Create()
{
$tmp = $this->Templet;  
foreach($this->DataSource as $key=>$value)
{
$tmp = str_replace("", $value, $tmp);  
}
$this->MkDir(dirname($this->fileName));  
$this->Open();  
$this->書き込み($tmp);  
$this->Close();  
}
}

関数 CreateShtml()
{
ob_start("callback_CteateShtml");  
}
関数 callback_CteateShtml($buffer)
{
$page = intval(@$_REQUEST["page"]);  
$shtml = 新しい Shtml();  
$shtml->SetFileName($_SERVER['DOCUMENT_ROOT'] . dirname($_SERVER['PHP_SELF']) . "/" . basename($_SERVER['PHP_SELF'],".php") . ($page) ==0 ? "" : "_" . strval($page)) .  
$shtml->Templet = $buffer;  
$shtml->Create();  
$buffer を返す;  
}
?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/317057.html技術記事代制コード例下: ?php classShtml { var$Templet; var$DataSource; var$ディレクトリ; var$ファイル名; var$mod; var$ハンドル; functionShtml($fileName="") { $このファイル名=$ファイル名; $this-...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。