收藏 分销(赏)

PHP生成静态类.doc

上传人:二*** 文档编号:4598194 上传时间:2024-10-03 格式:DOC 页数:9 大小:42KB 下载积分:5 金币
下载 相关 举报
PHP生成静态类.doc_第1页
第1页 / 共9页
本文档共9页,全文阅读请下载到手机保存,查看更方便
资源描述
<?php /* demo.html的代码 <html> <head><title>{title}</title></head> <body>{text}</body> <html> $sc=new template(); //$sc=new template($tmp,$filename,$arr); (本来这里直接用构造函数来实现的,考虑到会有很多的生成静态页的进程,还是改为函数调用,本处保留备用,在类中template()替换成templateHtml()即可实现) $tmp="../template/temp.php"; //模板页 $filename="test.html"; //生成页 $foot="../foot.html"; //包含的底文件,头文件同理 $arr=array(); $arr["{title}"]="新标题"; $arr["{text}"]="新内容"; $arr["{foot}"]=$sc->readHtml($foot); $sc->templateHtml($tmp,$filename,$arr); */ class template { var $temp; //读取的模板页文件名(包含路径) var $html; //要生成的html文件名(包含路径) var $err; //错误编号 var $test; //数据流 var $arr; //要替换的数组 模式(键名->模板标签 , 键值->替换内容) function template() { $this->temp=""; $this->html=""; $this->err=0; $this->test=""; } function templateHtml($temp,$html,$arr) { $err=$this->chkFile($temp); if((int)$err==0) { $fp=fopen($temp,"r"); //只读方式打开模板页 $test=fread($fp,filesize($temp)); //读取模板页的数据流 $test=$this->arr_replace($arr,$test); //替换文件 $err=$this->writefile($html,$test); //生成静态页 } echo "由模板页 ".$temp." 生成 ".$html.$this->error($err); return; } /* *判断文件是否存在 *返回错误提示 */ function chkFile($file) { if (file_exists($file)) { return 0; } return 1; } /* *根据数组文件内容,替换数据流 模式(键名->模板标签 , 键值->替换内容) *返回数据流 *参数$arr:数组 *参数$test :数据流 */ function arr_replace($arr,$test) { $ss=$test; foreach ($arr as $key => $value) { $ss= str_replace($key,$value,$ss); } return $ss; } /* *将数据流,写入到文件中 *返回执行状态 *参数$html:要生成的html文件 *参数$test :数据流 */ function writefile($html,$test) { $stat=2; if($this->chkFile($html)==0) //判断文件是否存在 { $stat=0; //已经存在返回0 } if($f=fopen($html,"w")) //写入方式打开文件,不存在则创建 { fputs($f,$test); fclose($f); $stat=0; //写入成功返回0 } else { $stat=2; //写入失败返回2 } return $stat; } /* *错误提示 *返回错误提示 *参数$err:错误编号 *参数$file :错误文件 */ function error($err) { $message=""; switch((int)$err) { case 0 : $message=" 静态页生成成功"; break; case 1 : $message=" 模板页打开失败,请检查是否存在"; break; case 2 : $message=" 文件生成失败,请检查目录权限"; break; default: $message=" 未知错误"; } return $message; } /* * *主要用来读取模板页,返回数据流 (比如top,foot公用文件,) *参数$file :模板页路径 */ function readHtml($file) { $test=""; $err=$this->chkFile($file); if($err==0) { $fp=fopen($file,"r"); //只读方式打开模板页 $test=fread($fp,filesize($file)); //读取模板页的数据流 } else { $test=$file.$this->error($err); } return $test; } /* * *主要用来删除已生成的文件,不返回 *参数$file :文件路径 */ function delete_file($file) { if (file_exists($file)) { $delete = chmod ($file, 0777); $delete = unlink($file); if(file_exists($file)) { $filesys = eregi_replace("/","\\",$file); $delete = system("del $filesys"); clearstatcache(); if(file_exists($file)) { $delete = chmod ($file, 0777); $delete = unlink($file); $delete = system("del $filesys"); } } clearstatcache(); } } } ?>
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服