一、静态化类
复制以下代码,存为文件static.class.php
1 | 1 <?php 2 13 class Shtml14 {15 function Shtml()16 {17 $this ->Templet = "" ;18 $this ->DataSource = array (); 19 $this ->fileName = "" ;20 $this ->mod = "wb" ;21 $this ->handle = false;22 }23 //绑定数据源,参数为一数组24 function BindData( $arr )25 {26 $this ->DataSource = $arr ;27 }28 //设置路径及文件名29 function SetFileName( $fileName )30 {31 return $this ->fileName = $fileName ;32 }33 function Open()34 {35 if ( $this ->handle = fopen ( $this ->fileName, $this ->mod))36 return $this ->handle;37 else38 return false;39 }40 function Close()41 {42 return fclose( $this ->handle);43 }44 function Write( $content )45 {46 return fwrite( $this ->handle, $content );47 }48 //建立目录,支持绝对路径与相对路径,相对路径相对于当前脚本。linux下注意要有权限49 function MkDir ( $pathname )50 {51 if ( $pathname ){52 str_replace ( "\\" , "/" , $pathname );53 if (! file_exists ( $pathname )){54 if (!@ mkdir ( $pathname ,0777)){55 echo "建立文件夹失败" ;56 exit ;57 }58 }59 } else {60 return false;61 }62 }63 // 生成静态文件64 function Create()65 {66 $tmp = $this ->Templet;67 foreach ( $this ->DataSource as $key => $value ) {68 $tmp = str_replace ( $key , $value , $tmp );69 }70 $this -> MkDir (dirname( $this ->fileName));71 $this ->Open();72 $this ->Write( $tmp );73 $this ->Close();74 }75 }76 ?>
|
Copier après la connexion
二、使用方法
复制以下代码,存为一个php文件,如test.php
1 | 1 <?php 2 include ( "static.class.php" ); 3 for ( $i =0; $i <10; $i ++){ 4 ob_start(); 5 echo "1234567890" . $i ;
|
Copier après la connexion