php格式書寫,php模板簡單寫法

2021-10-22 23:25:39 字數 4278 閱讀 7191

這是乙個簡單的用php 實現的模板教程物。

class  template

private  $path = "." ;          #根目錄

private $var;

private $tpldir = "template"; #模板儲存目錄

private $tplext = "tpl";      #模板檔案的字尾名

private $tplid = 0 ;   #模板的id號

private $compiledir = "template_c";  #編譯後的php檔案存放目錄

private $iscache=false ; #是否用快取 (預設不啟動)

private $cacheid = 1; #快取檔案id號

private $cachelefttime=3600; #快取有效期 (預設儲存3600秒)

private $cachedir = "cache"; #快取檔案儲存目錄

private $autorefresh = false ; #是否自動重新整理

private $pattern = array(

"/()/i",#包含檔案

"/()/i",#區域性變數

"/()/i",#全域性變數

"/()/i",#foreach 語句

"/()/i",           #foreach 結束

"/()/i",

"/()/i",

"/()/i",

"/()/i",

private $replacement = array(

'<?php echo $this->inc_file("\2"); ?>',

"<?php echo $\2;?>",

"<?php global $\2;n echo $\2; ?>",

"<?php foreach($\2 as $\3) ?>",

"<?php if (\2) else if(\2)else ?>",

#建構函式

function __construct($path = "", $tpldir="", $compiledir="",$iscache="",$cachelefttime="",$cachedir="" ,$autorefresh="")

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

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

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

$this->iscache = is_bool($iscache) ? $iscache : $this->iscache ;

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

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

$this->autorefresh = is_bool($autorefresh) ? $autorefresh : $this->autorefresh ;

#相容php4

function template($path = "", $tpldir="", $compiledir="",$iscache="",$cachelefttime="",$cachedir="" ,$autorefresh="")

$this->__construct($path = "", $tpldir="", $compiledir="",$iscache="",$cachelefttime="",$cachedir="" ,$autorefresh="");

function  __get($property)

return $this->$property ;

function __set($property,$value)

return $this->$property = $value ;

#給模板中的變數賦值

# $tplval 模板中的變數名

function assign($tplval ,$value="")

if (is_array($tplval))

foreach ($tplval as $key => $val)

if (!empty($key))

$this->var[$key] = $val ;

else " not exist !");

$this->cacheid = $cacheid ?  md5($cacheid) : md5($this->cacheid);

$cachefile = $this->path. "/".$this->cachedir."/".$tplfile.$this->cacheid ;

if ($this->check_cache($cachefile,$cachelefttime))  #當快取檔案存在且不過期時直接從快取檔案讀取內容

echo $this->read_file($cachefile);

}else " not exist");

#讀取檔案內容函式

function  read_file($filename)

if (!file_exists($filename)) die("read file fail") ;

return file_get_contents($filename);

#內容寫入函式

function write_file($filename,$content,$mode="wb")

$filename = trim($filename);

$content = $content ? stripslashes(trim($content)) : exit();

if (!file_exists($filename))

$array = explode("/",$filename);

$count = count($array);

$path = "";

for ($i = 0 ; $i

if(!file_exists($path .= $array[$i]."/"))

mkdir($path,0777);

$handle = fopen($filename,$mode) ;

fwrite($handle,$content);

fclose($handle);

return true;

# 清除快取

function clear_dir($dir="")

$dir = $this->path."/".$dir;

$handle = opendir($dir);

if (file_exists($dir))

while ($file = readdir($handle))

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

unlink($dir."/".$file);

closedir($handle);

return true;

else {

return false;

#清除所有快取

function clear_all_cache()

if ($this->clear_dir($this->cachedir) && $this->clear_dir($this->compiledir))

return true;

#檢查快取是否過期

function check_cache($cachefile,$cachelefttime="")

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

if (!file_exists($cachefile)) return false ;

$time = $this->get_time($cachefile) $cachelefttime ;

if ($time

unlink($cachefile);

return false;

return true;

# 獲取檔案最後編輯時間

function get_time($filename)

if (!file_exists($filename)) return false;

return filemtime($filename);

php格式書寫,PHP書寫格式詳解 必看

從乙個例子開始。echo 你好!將該檔案命名為 test.php 並儲存於 e html 目錄下。你好!在該例子中,我們以 echo 指令輸出乙個字串 你好!從這個例子可以看出 php 檔案或 php 段以 結束,中間為php 每乙個指令集以 符號結束 瀏覽器得到的為 php 解析器執行完 php ...

PHP書寫格式

從乙個例子開始。echo 你好!執行 將該檔案命名為 test.php 並儲存於 e html 目錄下。在瀏覽器位址列裡訪問該 php 檔案 輸出結果如下 你好!在該例子中,我們以 echo 指令輸出乙個字串 你好!從這個例子可以看出 當然,要輸出標準的html 可以把上例完善為 echo 你好!可...

php的書寫模式 PHP書寫格式詳解

摘要 從乙個例子開始。啟動編輯器,建立乙個php檔案並鍵入如下 echo 你好!將該檔案命名為 test.php 並儲存於 e html 目錄下。在瀏覽器位址列裡訪問該 php 檔案 輸出結果如下 你好!在該例子中,我們以 echo 指令輸出乙個字串 你好!從這個例子可以看出 從乙個例子開始。ech...