- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PHP 生成静态页面代码和调用方法
PHP 生成静态页面代码和调用方法2010-04-24 10:49 一,PHP 脚本与动态
页面PHP 脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML 文件混合,
也可以类,函数封装等形式,以模板的方式对用户请求进行处理无论以何种方
式,它的基本原理是这样的由客户端提出请求,请求某一页面WEB 服务器引
入指定相应脚本进行处理脚本被载入服务器由服务器指定的PHP 解析器
对脚本进行解析形成HTML 语言形式--将解析后的HTML 语句以包的方式传回给
浏览器由此不难看出,在页面发送到浏览器后,PHP 就不存在了,已被转化解
析为HTML 语句客户请求为一动态文件,事实上并没有真正的文件存在在那里,
是PHP 解析而成相对应的页面,然后发送回浏览器这种页面处理方式被称为动
态页面
二,静态页面静态页面是指在服务器端确实存在的仅含HTML 以及JS,CSS
等客户端运行脚本的页面它的处理方式是由客户端提出请求,请求某一页面--
WEB 服务器确认并载入某一页面--WEB 服务器将该页面以包的形式传递回浏览器
由这一过程,我们对比一下动态页面,即可方现动态页面需由WEB 服务器的
PHP 解析器进行解析,而且通常还需连接数据库,进行数据库存取操作,然后
才能形成HTML 语言信息包;而静态页面,无须解析,无须连接数据库,直接发
送,可大大减轻服务器压力,提高服务器负载能力,大幅提供页面打开速度和
网站整体打开速度但其缺点是,不能动态地对请求进行处理,服务器上必须确
实存在该文件
temp.html HTML TITLE{title}/TITLE BODY this is a{file}files
templets/BODY/HTML PHP 处理:templetest.php
$fp=fopen(temp.html,r);
$content=fread($fp,filesize(temp.html));
$content.=str_replace({file},$file,$content);
$content.=str_replace({title},$title,$content);
模板解析处理,即将经PHP 脚本解析处理后得出的结果填充(content)进模
板的处理过程通常借助于模板类目前较流行的模板解析类有phplib,smarty,
fastsmarty 等等模板解析处理的原理通常为替换也有些程序员习惯将判断,循
环等处理放进模板文件中,用解析类处理,典型应用为block 概念,简单来说
即为一个循环处理由PHP 脚本指定循环次数,如何循环代入等,再由模板解析
类具体实施这些操作
好了,对比过静态页面与动态页面各自的优劣,现在我们就来说说,如何
用PHP 生成静态文件
PHP 生成静态页面并不是指PHP 的动态解析,输出HTML 页面,而是指用
PHP 创建HTML 页面同时因为HTML 的不可写性,我们创建的HTML 若有修改,则
需删掉重新生成即可(当然你也可以选择用正则进行修改,但个人认为那样做倒
不如删掉重新生成来得快捷,有些得不偿失)
言归正传用过PHP 文件操作函数的PHP FANS 知道,PHP 中有一个文件操作
函数fopen,即打开文件若文件不存在,则尝试创建这即是PHP 可以用来创建
HTML 文件的理论基础只要用来存放HTML 文件的文件夹有写权限(即权限定义
0777),即可创建文件(针对 UNIX 系统而言,Win 系统无须考虑)仍以上例为例,
若我们修改最后一句,并指定在test 目录下生成一个名为test.html 的静态文
件:
$fp=fopen(temp.html,r);
$content=fread($fp,filesize(temp.html));
$content.=str_replace({file},$file,$content);
$content.=str_replace({title},$title,$content);
//echo$content;
$filename=test/test.html;$handle=fopen($filename,w);//打开
文件指针,创建文件/*检查文件是否被创建且可写*/if( !
is_writable($filename)){die(文件:.$filename.不可写,请检查其属性
后重试!);}if(!fwrite($handle,$content)){//将信息写入文件die(
文档评论(0)