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在线代理转向代码
May 05 PHP
PHP中使用foreach和引用导致程序BUG的问题介绍
Sep 05 PHP
CodeIgniter框架URL路由总结
Sep 03 PHP
php实现约瑟夫问题的方法小结
Mar 23 PHP
PHP简单生成缩略图相册的方法
Jul 29 PHP
10个php函数实用却不常见
Oct 13 PHP
php使用ZipArchive函数实现文件的压缩与解压缩
Oct 27 PHP
yii2 commands模式以及配置crontab定时任务的方法
Aug 19 PHP
THINKPHP3.2使用soap连接webservice的解决方法
Dec 13 PHP
详解PHP中的外观模式facade pattern
Feb 05 PHP
PHP实现微信退款功能
Oct 02 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
Apr 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
虫族 Zerg 魔法科技
2020/03/14 星际争霸
PHP内核探索之变量
2015/12/22 PHP
深入浅析PHP的session反序列化漏洞问题
2017/06/15 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
php实现商城购物车的思路和源码分析
2020/07/23 PHP
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
2006/12/22 Javascript
js 金额格式化来回转换示例
2014/02/23 Javascript
鼠标移到图片上变大显示而不是放大镜效果
2014/06/15 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
JavaScript中SetInterval与setTimeout的用法详解
2015/11/10 Javascript
JS、jQuery中select的用法详解
2016/04/21 Javascript
基于JavaScript实现图片剪切效果
2017/03/07 Javascript
vue组件Prop传递数据的实现示例
2017/08/17 Javascript
nodejs实现套接字服务功能详解
2018/06/21 NodeJs
基于Vue实现可以拖拽的树形表格实例详解
2018/10/18 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
[01:07:11]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python人人网登录应用实例
2014/09/26 Python
使用python爬取B站千万级数据
2018/06/08 Python
Python中浅拷贝copy与深拷贝deepcopy的简单理解
2018/10/26 Python
pip安装py_zipkin时提示的SSL问题对应
2018/12/29 Python
python命令行参数用法实例分析
2019/06/25 Python
如何基于python操作json文件获取内容
2019/12/24 Python
PyCharm使用之配置SSH Interpreter的方法步骤
2019/12/26 Python
基于pytorch 预训练的词向量用法详解
2020/01/06 Python
django中related_name的用法说明
2020/05/20 Python
CSS3中新增的对文本和字体的设置
2020/02/03 HTML / CSS
Manuka Doctor美国官网:麦卢卡蜂蜜和蜂毒护肤
2016/12/25 全球购物
创业计划书——互联网商机
2014/01/12 职场文书
2014年五一促销活动方案
2014/03/09 职场文书
大气污染防治方案
2014/05/19 职场文书
2015年新教师工作总结
2015/04/28 职场文书
2016新年感言
2015/08/03 职场文书
Python中json.dumps()函数的使用解析
2021/05/17 Python
Jupyter notebook 不自动弹出网页的解决方案
2021/05/21 Python
浅谈mysql增加索引不生效的几种情况
2021/06/23 MySQL