用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 相关文章推荐
ajax+php打造进度条 readyState各状态
Mar 20 PHP
php报表之jpgraph柱状图实例代码
Aug 22 PHP
PHP 获取文件路径(灵活应用__FILE__)
Feb 15 PHP
PHP取余函数介绍MOD(x,y)与x%y
May 15 PHP
php遍历类中包含的所有元素的方法
May 12 PHP
如何使用Gitblog和Markdown建自己的博客
Jul 31 PHP
PHP统计当前在线用户数实例讲解
Oct 21 PHP
windows平台中配置nginx+php环境
Dec 06 PHP
thinkphp中AJAX返回ajaxReturn()方法分析
Dec 06 PHP
实例讲解PHP中使用命名空间
Jan 27 PHP
php面向对象基础详解【星际争霸游戏案例】
Jan 23 PHP
PHP优化之批量操作MySQL实例分析
Apr 23 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
推荐几部必看的DC动画电影
2020/03/03 欧美动漫
定义php常量的详解
2013/06/09 PHP
隐性调用php程序的方法
2015/06/13 PHP
学习PHP的数组总结【经验】
2016/05/05 PHP
javascript面向对象之Javascript 继承
2010/05/04 Javascript
node.js中的http.response.removeHeader方法使用说明
2014/12/14 Javascript
jquery获取所有选中的checkbox实现代码
2016/05/26 Javascript
jQuery使用ajax方法解析返回的json数据功能示例
2017/01/10 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
2017/02/08 Javascript
ES6学习之变量的解构赋值
2017/02/12 Javascript
基于JS实现移动端向左滑动出现删除按钮功能
2017/02/22 Javascript
JS实现简单抖动效果
2017/06/01 Javascript
vue.js实现简单轮播图效果
2017/10/10 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
jQuery超简单遮罩层实现方法示例
2018/09/06 jQuery
jQuery表单选择器用法详解
2019/08/22 jQuery
Element Collapse 折叠面板的使用方法
2020/07/26 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
[03:15]2014DOTA2国际邀请赛 专访国士无双信心满满
2014/07/12 DOTA
python实现文件名批量替换和内容替换
2014/03/20 Python
Python中函数的多种格式和使用实例及小技巧
2015/04/13 Python
Python进程间通信用法实例
2015/06/04 Python
Python实现手写一个类似django的web框架示例
2018/07/20 Python
解决pyqt5中QToolButton无法使用的问题
2019/06/21 Python
Pytorch通过保存为ONNX模型转TensorRT5的实现
2020/05/25 Python
python 用opencv实现霍夫线变换
2020/11/27 Python
Python爬虫分析微博热搜关键词的实现代码
2021/02/22 Python
HTML5边玩边学(2)基础绘图实现方法
2010/09/21 HTML / CSS
remote接口和home接口主要作用
2013/05/15 面试题
应用数学专业求职信
2014/03/14 职场文书
人力资源部岗位职责
2015/02/11 职场文书
借条格式范本
2015/05/25 职场文书
《三国志》赏析
2019/08/27 职场文书
“爱眼护眼,提前预防近视”倡议书3篇
2019/10/30 职场文书
python 下划线的多种应用场景总结
2021/05/12 Python
java设计模式--三种工厂模式详解
2021/07/21 Java/Android