php使用标签替换的方式生成静态页面


Posted in PHP onMay 21, 2015

这段代码演示了php如何通过自定义的模板页面和自定义标签生成静态页面。原理非常简单,就是将模板页面中的标签替换成动态数据即可。希望能给你一定的启发。

template.html 模板文件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>{site_title} - sharejs.com</title>
</head>
<body>
<iframe width="100%" height="1000px" scrolling="yes" frameborder="0" src="{site_url}" ></iframe>
</body>
</html>

test.php 动态文件

<?php
header('content-type:text/html; charset=utf-8');//防止生成的页面乱码
$title = "PHP 动态生成静态HTML页面_脚本分享网"; //定义变量
$url = "http://www.sharejs.com";
$temp_file = "temp.html"; //临时文件,也可以是模板文件
$dest_file = "dest_page.html"; //生成的目标页面
$fp = fopen($temp_file, "r"); //只读打开模板
$str = fread($fp, filesize($temp_file));//读取模板中内容
$str = str_replace("{penglig_site_title}", $title, $str);//替换内容
$str = str_replace("{penglig_site_url}", $url, $str);//替换内容
fclose($fp);
$handle = fopen($dest_file, "w"); //写入方式打开需要写入的文件
fwrite($handle, $str); //把刚才替换的内容写进生成的HTML文件
fclose($handle);//关闭打开的文件,释放文件指针和相关的缓冲区
echo "<script>alert('生成成功');window.location.href='".$dest_file."';</script>";
?>

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
PHP 增加了对 .ZIP 文件的读取功能
Oct 09 PHP
基于mysql的论坛(7)
Oct 09 PHP
不错的PHP学习之php4与php5之间会穿梭一点点感悟
May 03 PHP
php实现的简单压缩英文字符串的代码
Apr 24 PHP
php 分页函数multi() discuz
Jun 21 PHP
php file_exists 检查文件或目录是否存在的函数
May 10 PHP
php中ob_get_length缓冲与获取缓冲长度实例
Nov 20 PHP
php中smarty变量修饰用法实例分析
Jun 11 PHP
php计算多个集合的笛卡尔积实例详解
Feb 16 PHP
PHP新特性之字节码缓存和内置服务器
Aug 11 PHP
浅谈Laravel核心解读之Console内核
Dec 02 PHP
laravel 关联关系遍历数组的例子
Oct 10 PHP
php eval函数一句话木马代码
May 21 #PHP
php结合正则批量抓取网页中邮箱地址
May 19 #PHP
php实现模拟登陆方正教务系统抓取课表
May 19 #PHP
PHP IDE phpstorm 常用快捷键
May 18 #PHP
PHP网络操作函数汇总
May 18 #PHP
PHP面向对象之后期静态绑定功能介绍
May 18 #PHP
php中关于socket的系列函数总结
May 18 #PHP
You might like
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
openPNE常用方法分享
2011/11/29 PHP
解析PHP的session过期设置
2013/06/29 PHP
ThinkPHP3.1之D方法实例详解
2014/06/20 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
2019/10/20 PHP
Javascript注入技巧
2007/06/22 Javascript
JS+XML 省份和城市之间的联动实现代码
2009/10/14 Javascript
jquery 打开窗口返回值实现代码
2010/03/04 Javascript
十个迅速提升JQuery性能让你的JQuery跑得更快
2012/12/10 Javascript
js加入收藏夹代码(兼容ie/ff/op)
2014/05/16 Javascript
使用jquery实现放大镜效果
2014/09/02 Javascript
js的toLowerCase方法用法实例
2015/01/27 Javascript
使用ionic切换页面卡顿的解决方法
2016/12/16 Javascript
JS实现数组去重复值的方法示例
2017/02/18 Javascript
解决Jstree 选中父节点时被禁用的子节点也会选中的问题
2017/12/27 Javascript
使用Promise封装小程序wx.request的实现方法
2019/11/13 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
python在linux系统下获取系统内存使用情况的方法
2015/05/11 Python
详解Python中的type()方法的使用
2015/05/21 Python
在Linux系统上部署Apache+Python+Django+MySQL环境
2015/12/24 Python
Python闭包执行时值的传递方式实例分析
2018/06/04 Python
opencv python 基于KNN的手写体识别的实例
2018/08/03 Python
使用Python实现在Windows下安装Django
2018/10/17 Python
在Python中Dataframe通过print输出多行时显示省略号的实例
2018/12/22 Python
利用Python实现朋友圈中的九宫格图片效果
2020/09/03 Python
Django-Scrapy生成后端json接口的方法示例
2020/10/06 Python
Django Form常用功能及代码示例
2020/10/13 Python
阿迪达斯西班牙官方网站:adidas西班牙
2016/07/21 全球购物
中职生自荐信
2013/10/13 职场文书
《颐和园》教学反思
2014/02/26 职场文书
2014政府领导班子对照检查材料思想汇报(3篇)
2014/09/26 职场文书
社区灵活就业证明
2014/11/03 职场文书
《学会看病》教学反思
2016/02/17 职场文书
CSS3常见动画的实现方式
2021/04/14 HTML / CSS