用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 相关文章推荐
我的论坛源代码(九)
Oct 09 PHP
PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法
Mar 10 PHP
php5.5中类级别的常量使用介绍
Oct 02 PHP
php输出1000以内质数(素数)示例
Feb 16 PHP
两种设置php载入页面时编码的方法
Jul 29 PHP
php实现带读写分离功能的MySQL类完整实例
Jul 28 PHP
如何用PHP做到页面注册审核
Mar 02 PHP
PHP实现求两个字符串最长公共子串的方法示例
Nov 17 PHP
PHP常见数组排序方法小结
Aug 20 PHP
基于Laravel 5.2 regex验证的正确写法
Sep 29 PHP
关于laravel 数据库迁移中integer类型是无法指定长度的问题
Oct 09 PHP
基于laravel where的高级使用方法
Oct 10 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
ob_start(),ob_start('ob_gzhandler')使用
2006/12/25 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
2010/10/19 PHP
PHP+Ajax实时自动检测是否联网的方法
2015/07/01 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
PHP7+Nginx的配置与安装教程详解
2016/05/10 PHP
PHP解决中文乱码
2017/04/28 PHP
PHP创建XML接口示例
2019/07/04 PHP
为Yahoo! UI Extensions Grid增加内置的可编辑器
2007/03/10 Javascript
javascript div 遮罩层封锁整个页面
2009/07/10 Javascript
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
Javascript 通过json自动生成Dom的代码
2010/04/01 Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
2010/07/25 Javascript
JavaScript isArray()函数判断对象类型的种种方法
2010/10/11 Javascript
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
2013/05/07 Javascript
JS对象转换为Jquery对象示例
2014/01/26 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
angularJS Provider、factory、service详解及实例代码
2016/09/21 Javascript
完美的js div拖拽实例代码
2016/09/24 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
从零学习node.js之模块规范(一)
2017/02/21 Javascript
JS库particles.js创建超炫背景粒子插件(附源码下载)
2017/09/13 Javascript
详解Vue 如何监听Array的变化
2019/06/06 Javascript
[01:02:54]完美世界DOTA2联赛PWL S2 FTD vs GXR 第一场 11.22
2020/11/26 DOTA
Python编程中对super函数的正确理解和用法解析
2016/07/02 Python
Python中的Numpy矩阵操作
2018/08/12 Python
Python实现一个数组除以一个数的例子
2019/07/20 Python
欧舒丹英国官网:购买欧舒丹护手霜等明星产品
2017/01/17 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
药店促销活动总结
2014/07/10 职场文书
机动车登记业务委托书
2014/10/08 职场文书
2014年协会工作总结
2014/11/22 职场文书
2015年安全生产月工作总结
2015/07/27 职场文书
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
2021/04/06 Python
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers
SQLServer权限之只开启创建表权限
2022/04/12 SQL Server