十年专注于品牌网站建设 十年专注于品牌网站建设,低调、有情怀的网络应用服务商!
南昌百恒网络微信公众号 扫一扫关注
小程序
tel-icon全国服务热线:400-680-9298,0791-88117053
扫一扫关注百恒网络微信公众号
扫一扫打开百恒网络微信小程序

百恒网络

南昌百恒网络

php生成html静态实现理论及思路

百恒网络 2013-05-08 1463

将动态网页转成静态页面的意义,及作用,下面由南昌网站建设公司工程师进行介绍:

有技术人员提问:

1,除了提高浏览速度,把页面生成为html有什么好处?

举一个常见的例子,一个新闻系统需要做全站(前台)静态的。它有首页index.html,分页NewsList.html,详细页NewsShow.html。

2,每个详细页面生成为静态页面的时候,

(1),往往头部都包含小导航,如:首页>公司新闻>公司文化,还有页面旁边有“热点新闻、相关新闻”“广告”等,除了主体部分,这些原 来用PHP实现时都是动态变化的,现在做成静态的,怎么办?假如相关新闻有变动,那是不是当前这个详细页面需要重新生成一次?

(2),当编辑文章时,是不是要重新生成一次?

3,分页显示的时候

(1),同样含有问题2-1的问题

(2),假设总共有3页,每页10记录,假设记录不增加不减少。假设每个页面只显示文章标题。如果某个文章标题改变了,那么是不是它所属那个页面(如NewsList3.html)要重新生成一次?

(3),假设总共有3页,每页10记录。如果记录有增或者减少,那么各个分页 (如:NewsList1.html,NewsList2.html,NewsList3.html)是不是都需要重新生成?因为有可能 NewsList3.html这个页面里需要显示的文章又多了一条或者少了一条。

(4),页面下面经常会带有[1][2][3][4]等分页链接。如果增加或者减少了记录,那么总页数有可能增加,意思是有可能总共有5页或者2页 了。那么各个分页是不是又必须重新生成一次?首页末页问题,假设原来只有3页,末页是NewsList3.html,现在可能增加了很多记录,末页变成 NewsList100.html了,如果以前生成过99个页面,那是不是99个页面的末页都必须改成NewsList100.html,必须重新生成?

(5),怎么区分已经生成过的?将要生成的?

4,是不是每次修改数据库,都必须全盘通通重新生成一次?

南昌网站设计公司工程师进行回答:

1.fread读模板(读取之前要用fopen打开模板),或者模板保存在数据库里,通过替换关键字,然后fwrite保存为页面.

2.读取已经处理好的PHP页面信息,fwrite生成.

2,每个详细页面生成为静态页面的时候,

(1),往往头部都包含小导航,如:首页>公司新闻>公司文化,还有页面旁边有“热点新闻、相关新闻”“广告”等,除了主体部分,这些原 来用PHP实现时都是动态变化的,现在做成静态的,怎么办?假如相关新闻有变动,那是不是当前这个详细页面需要重新生成一次?

在模板文件中定义 keyword ,在后台生成页面时,替换导航, 例如, 后台生成数据时,当前页的类别 是 A, 则 str_replace(CODE,KEYWORD,"A").

(2),当编辑文章时,是不是要重新生成一次?

是,

3,分页显示的时候

(1),同样含有问题2-1的问题

同上.

(2),假设总共有3页,每页10记录,假设记录不增加不减少。假设每个页面只显示文章标题。如果某个文章标题改变了,那么是不是它所属那个页面(如NewsList3.html)要重新生成一次?

是.

(3),假设总共有3页,每页10记录。如果记录有增或者减少,那么各个分页 (如:NewsList1.html,NewsList2.html,NewsList3.html)是不是都需要重新生成?因为有可能 NewsList3.html这个页面里需要显示的文章又多了一条或者少了一条。

是.

(4),页面下面经常会带有[1][2][3][4]等分页链接。如果增加或者减少了记录,那么总页数有可能增加,意思是有可能总共有5页或者2页 了。那么各个分页是不是又必须重新生成一次?首页末页问题,假设原来只有3页,末页是NewsList3.html,现在可能增加了很多记录,末页变成 NewsList100.html了,如果以前生成过99个页面,那是不是99个页面的末页都必须改成NewsList100.html,必须重新生 成?

是.

(5),怎么区分已经生成过的?将要生成的?

数据库里应该有一个字段存放,对应的页面文件。

5,是不是每次修改数据库,都必须全盘通通重新生成一次?

只生成对当前数据关联的页面.

专业专注于南昌网页制作、南昌建网站、南昌网站开发项目,为用户提供高品质的网络产品和优质的服务是我们始终追求的目标!


400-680-9298,0791-88117053
扫一扫关注百恒网络微信公众号
扫一扫打开百恒网络小程序

欢迎您的光顾,我们将竭诚为您服务×

售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售后服务 售后服务
 
售后服务 售后服务
 
备案专线 备案专线
 
×