用PHP实现WEB动态网页静态


Posted in PHP onOctober 09, 2006

在最近几年,万维网(也称环球信息网,即WWW)不断改变信息处理技术的面貌。WEB已经快速地成为一种有效的媒介,并适合人们和商业沟通和协作。几乎所有的信息技术领域都普遍受到WEB的影响。Web访问带来更多用户和更多数据,这意味着给服务器和数据库更多压力和最终用户得到越来越慢的响应速度。与不断靠增加CPU,磁盘驱动器及内存来跟上这种增长的需求相比, WEB动态网页面静态化应该是一个更实用,更经济的选择。

用PHP实现WEB动态网页静态化的具体实现函数如function gen_static_file()所示

function gen_static_file($program, $filename){$program 1= "/usr/local/apache/htdocs/php/" . $program;$filename1 = "/usr/local/apache/htdocs/ static_html/" . $filename;$cmd_str = "/usr/local/php4/bin/php " . $program1 . " } " . $filename1 . " ";system($cmd_str);echo $filename . " generated.〈br〉";}

这个函数是实现静态化的关键,即PHP动态页面程序不是被送到浏览器中,而是输入到名为$filename的文件中去(如图2)。两个参数中$program是PHP动态页面程序,$filename是生成的静态页面的名字(可根据需要自己制定命名规则,这一点很重要,见下文),/usr/local/php4/bin/php是PHP中具有把程序输入文件功能的部分,System是PHP中执行外部命令的函数。我们还可以看出所有生成动态页面的php程序需放在/php/目录下,所有新产生的静态页面则会出现在/static_html/目录下(这些路径可以根据具体需要设置)。

下面让我们举个具体例子,看一下college_static.php的静态页面是怎样生成的。

function gen_college_static (){for ($i = 0; $i 〈= 32; $i++〉{putenv("province_id=" . $i); //*.php文件从数据库取数据时要用到。$filename = " college_static". $i . ".html";gen_static_file("college_static.php", $filename);}

从这个函数我们可以看到通过调用函数gen_static_file(), college_static.php经过静态化,变成了33个静态页面college.static0.html~college.static33.html,其中$filename会随着$I的变化而变化。当然也可以从数据库中直接取值,来控制生成的静态页面的个数和名字,其他程序对生成的静态页面的调用应和静态页面的命名规则一致。
PHP 相关文章推荐
PHP 批量更新网页内容实现代码
Jan 05 PHP
PHP实现的英文名字全拼随机排号脚本
Jul 04 PHP
Chrome Web App开发小结
Sep 04 PHP
php之curl实现http与https请求的方法
Oct 21 PHP
PHP清除字符串中所有无用标签的方法
Dec 01 PHP
PHP获得数组交集与差集的方法
Jun 10 PHP
Thinkphp框架开发移动端接口(2)
Aug 18 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
May 25 PHP
PHP PDOStatement::bindParam讲解
Jan 30 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
May 13 PHP
Laravel 验证码认证学习记录小结
Dec 20 PHP
基于PHP实现短信验证码发送次数限制
Jul 11 PHP
用libtemplate实现静态网页生成
Oct 09 #PHP
初探PHP5
Oct 09 #PHP
用PHP连mysql和oracle数据库性能比较
Oct 09 #PHP
利用文件属性结合Session实现在线人数统计
Oct 09 #PHP
PHP中上传大体积文件时需要的设置
Oct 09 #PHP
新版PHP极大的增强功能和性能
Oct 09 #PHP
用PHP开发GUI
Oct 09 #PHP
You might like
深入理解:单一入口、MVC、ORM、CURD、ActiveRecord概念
2013/06/06 PHP
CodeIgniter框架数据库基本操作示例
2018/05/24 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
2019/04/09 PHP
JavaScript 编程引入命名空间的方法与代码
2007/08/13 Javascript
javascript 写类方式之七
2009/07/05 Javascript
一个可以随意添加多个序列的tag函数
2009/07/21 Javascript
JavaScript在IE和FF下的兼容性问题
2014/05/19 Javascript
JavaScript设计模式之单例模式实例
2014/09/24 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
2015/04/06 Javascript
jQuery团购倒计时特效实现方法
2015/05/07 Javascript
详解nodejs 文本操作模块-fs模块(四)
2016/12/22 NodeJs
webpack学习教程之publicPath路径问题详解
2017/06/17 Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
2018/08/31 Javascript
深入理解JavaScript 中的执行上下文和执行栈
2018/10/23 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
VUE table表格动态添加一列数据,新增的这些数据不可以编辑(v-model绑定的数据不能实时更新)
2020/04/03 Javascript
[01:05:29]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第二场 1月24日
2021/03/11 DOTA
深入解析Python中的lambda表达式的用法
2015/08/28 Python
python3设计模式之简单工厂模式
2017/10/17 Python
python制作填词游戏步骤详解
2019/05/05 Python
Python使用selenium + headless chrome获取网页内容的方法示例
2019/10/16 Python
python中如何进行连乘计算
2020/05/28 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
创业计划书如何吸引他人眼球
2014/01/10 职场文书
班主任班级寄语大全
2014/04/04 职场文书
房产转让协议书
2014/04/11 职场文书
安全教育演讲稿
2014/05/09 职场文书
校长竞聘演讲稿
2014/05/16 职场文书
群众路线党员自我评议范文2014
2014/09/24 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
本科毕业论文致谢怎么写
2015/05/14 职场文书
经费申请报告范文
2015/05/18 职场文书
工作感言一句话
2015/08/01 职场文书
如何使用vue3打造一个物料库
2021/05/08 Vue.js