把php生成静态(html)页面程序代码
代码如下 | 复制代码 |
class create_html { private $template; //模版 private $file_name; //文件名 private $array; //数据数组 function __construct($file_name, $template, $array) { //构造类 $this->template = $this->read_file($template, "r"); //读取模板文件 $this->file_name = $file_name; $this->array = $array; //数据数据 $this->html(); //生成html } function html() { //生成html while (ereg ("{([0-9]+)}", $this->template, $regs)) { //循环模版中所能的{1}….. $num = $regs[1]; //得到1、2、3序列 $this->template = ereg_replace("{".$num."}", $this->array[$num], $this->template); //把数据替换成html内容 $this->write_file($this->file_name, $this->template, "w+"); //生成HTML文件 } } function read_file($file_url, $method = "r") { //读取文件 $fp = @fopen($file_url, $method); //打开文件 $file_data = fread($fp, filesize($file_url)); //读取文件信息 return $file_data; } function write_file($file_url, $data, $method) { //写入文件 $fp = @fopen($file_url, $method); //打开文件 @flock($fp, LOCK_EX); //锁定文件 $file_data = fwrite($fp, $data); //写入文件 fclose($fp); //关闭文件 return $file_data; } } #例子———————- #读取邮件回复模版———————————————————————————- $title = "标题"; $navigation = "浏览器"; $happy_origin = "作者"; $name = "test2.htm"; $template = "default_tmp.php"; //模版中用{1}{2}来替换 $daytype = array(1 => $title, 2 => $navigation, 3 => $happy_origin); $htm = new Restore_email($template, $daytype); echo $htm->pint(); ?> |