php技术生成静态页面的实现

  我们先回顾一些基本的概念。

  一、PHP脚本与动态页面。

  PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合,也可以类,函数封装等形式,以模板的方式对用户请求进行处理。无论以何种方式,它的基本原理是这样的。由客户端提出请求,请求某一页面 -----> Web服务器引入指定相应脚本进行处理 -----> 脚本被载入服务器 -----> 由服务器指定的PHP解析器对脚本进行解析形成HTML语言形式 ----> 将解析后的HTML语句以包的方式传回给浏览器。由此不难看出,在页面发送到浏览器后, PHP就不存在了,已被转化解析为HTML语句。客户请求为一动态文件,事实上并没有真正的文件存在在那里,是PHP解析而成相对应的页面,然后发送回浏览器。这种页面处理方式被称为“动态页面”。

  二、静态页面。

  静态页面是指在服务器端确实存在的仅含HTML以及JS,CSS等客户端运行脚本的页面。它的处理方式是。由客户端提出请求,请求某一页面 - --- > WEB服务器确认并载入某一页面 ----> WEB服务器将该页面以包的形式传递回浏览器。由这一过程,我们对比一下动态页面,即可方现。动态页面需由Web服务器的PHP解析器进行解析,而且通常还需连接数据库,进行数据库存取操作,然后才能形成HTML语言信息包;而静态页面,无须解析,无须连接数据库,直接发送,可大大减轻服务器压力,提高服务器负载能力,大幅提供页面打开速度和网站整体打开速度。但其缺点是,不能动态地对请求进行处理,服务器上必须确实存在该文件。

  三、模板及模板解析。

  模板即尚未填充内容html文件。例如:

  temp.html

  Code:

以下是引用片段:
<HTML>
<TITLE>{ title }</TITLE>
<BODY>
this is a { file } file''''s templets
</BODY>
</HTML>

  PHP处理:

以下是引用片段:
  templetest.php
  Code:
  $title = "HP爱好者测试模板";
  $file = "TwoMax Inter test templet,
  author:Sheyi";
  $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;
  ?>

  模板解析处理,即将经PHP脚本解析处理后得出的结果填充(content)进模板的处理过程。通常借助于模板类。目前较流行的模板解析类有 phplib,smarty,fastsmarty等等。模板解析处理的原理通常为替换。也有些程序员习惯将判断,循环等处理放进模板文件中,用解析类处理,典型应用为block概念,简单来说即为一个循环处理。由PHP脚本指定循环次数,如何循环代入等,再由模板解析类具体实施这些操作。
1 2 3 下一页 >全文阅读
提示:试试"← →"键,翻页更方便哦!

时间: 2024-12-21 16:06:24

php技术生成静态页面的实现的相关文章

推荐阅读:php技术生成静态页面的实现

我们先回顾一些基本的概念. 一.PHP脚本与动态页面. PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合,也可以类,函数封装等形式,以模板的方式对用户请求进行处理.无论以何种方式,它的基本原理是这样的.由客户端提出请求,请求某一页面 -----> WEB服务器引入指定相应脚本进行处理 -----> 脚本被载入服务器 -----> 由服务器指定的PHP解析器对脚本进行解析形成HTML语言形式 ----> 将解析后的HTML语句以包的方式传回给浏览器.由此不难看出,

生成静态页面的技术是如何实现的

问题描述 在浏览很多论坛或者网站的时候,一般都是大型的门户网站或者论坛.发现都是.html的静态页面.比如: http://www.domain.com/thread-htm-fid-240.html 的形式.我觉得这个肯定是在后台通过程序将JSP页面生成的html页面.我想问的就是这个是如何实现的? 通过什么技术 或者是 什么设计模式 ?这样做的有点和缺点都有哪些?有点我认为可以减少对数据库的操作,增加搜索引擎的抓取几率吧,不知道理解的对不对.在本站和网络上也搜索了不少,但是感觉说的都太模糊了

比较详细PHP生成静态页面教程_php技巧

一,PHP脚本与动态页面. PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合,也可以类,函数封装等形式,以模板的方式对用户请求进行处理.无论以何种方式,它的基本原理是这样的.由客户端提出请求,请求某一页面 -----> WEB服务器引入指定相应脚本进行处理 -----> 脚本被载入服务器 -----> 由服务器指定的PHP解析器对脚本进行解析形成HTML语言形式 ----> 将解析后的HTML语句以包的方式传回给浏览器.由此不难看出,在页面发送到浏览器后,PHP

网站生成静态页面,及网站数据采集的攻、防原理和策略_小偷/采集

发布时间:2005年11月27日 晚 文章作者:翟振凯 (小琦) 交流方式: 个人站:http://www.xiaoqi.net     技术站:http://www.iisvs.net 商业站:http://www.iisvs.com QQ:53353866 22336848 关于本文:         本着互联网共享主义精神,特写此文献给建站新手,授人以鱼,不如授人以渔,本文所讲的只是方法和原理,希 望大家看完此文,能够从中得到些帮助和启发.         本文从一个ASP程序员的角度用大

php 静态化页面 生成静态页面

前言: 目前网络上好多网站的新闻发布系统都采用了动态服务器技术生成静态HTML的做法,这样做的好处是:一是能减轻其服务器的负担,二是因为生成了HTML静态页面,所以其网站被搜索引擎搜索到的机率更大一些.笔者的网站曾经使用PHP这一动态技术来构建新闻发布系统,其原理也就是应用了PHP生成HTML静态页面的技术,相关平台是 Windows XP Sp2+php4.32+mysql,因此,在这里,想简单地谈一下这种做法的思路.这篇文章适合于对PHP+MYSQL数据库操作,SQL语句以及网页设计有点基础

谈PHP生成静态页面分析 模板+缓存+写文件_php技巧

一.引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权限限制等,但是,对应一些我们经常频频使用的文件,比方说,开发的新闻发布系统,我们不希望很多用户都读取数据库才显示结果,这样一方面消耗了服务器的资源,另一方面占去了浏览者大量可贵的响应时间,所有,有了"静态页面话"的做法,当前很多网站都采用这种技术,一般都是由管理后台控制,或者生成html直

asp.net生成静态页面怎么给静态页面的图片动态加水印

问题描述 asp.net生成静态页面怎么给静态页面的图片动态加水印 解决方案 解决方案二:通常你会有几个地方可以控制图片的加入动作比如上传图片那么加水印可以在这个时候进行对已有的图片可以进行批量处理加水印的方法ImagewaterMask=Image.FromFile("水印图片地址");Imageimg=Image.FromFile("需要加水印的图片地址");Graphicsg=Graphics.FromImage(img);g.DrawImage(waterM

PHP生成静态页面注意几点

一 : 引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权限限制等,但是,对应一些我们经常频频使用的文件,比方说,开发的新闻发布系统,我们不希望很多用户都读取数据库才显示结果,这样一方面消耗了服务器的资源,另一方面占去了浏览者大量可贵的响应时间,所有,有了"静态页面话"的做法,当前很多网站都采用这种技术,一般都是由管理后台控制,或者生成htm

java高并发生成静态页面生成方案

 提升网站性能的方式有很多,例如有效的使用缓存,生成静态页面等等.今天要说的就是生成静态页面的方式.这个也是我近期一直在搞的一个问题,近期在做使用html + servlet做个人网站,为什么是这2个东西呢?         1.直接用servlet是为了保证网站能以最快的速度执行命令..个人总感觉像Struts hibernate spring之类的虽然方便但是效能带来的损耗不太能接收       2.使用html同样是为了保证最快的反应速度,毕竟html 比jsp少了一层服务器执行.速度上要