欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【也用PHP来实现网页静态发布的两种方法】,下面是详细的分享!
也用PHP来实现网页静态发布的两种方法
如今很多网站都是静态发布的,PHP当然也可以方便的实现静态发布喽,具体的实现方法很多,下面我就说说我会的两种方法。
方法一:ob_get_contents()
这是一种很方便的方法,也是很常用的方法,实现原理是:首先打开缓存,然后创建相应的静态页文件,写入缓存的内容,清空缓存。
示例:
| <?php ob_strart();#打开缓冲区 $fn=date('ymdhis').rand(1000,9999).'html';//生成文件名 require("supply.php");#载入要生成静态页的文件,因为后台有ob_clen()所以在不会显示出来 $fs=fopen($fn,'w');#打开静态页文件 fwrite($fs,ob_get_contents());#生成静态文件 ob_clean();#清空缓存 ?> |
方法二:file_get_contents();
| <?php $fn=date('ymdhis').rand(1000,9999).'html'; $url='http://'.$_SERVER['HTTP_HOST']."/";#注意 $content=file_get_contents($url); $fs=fopen($fn,'w'); fwrite($fs,$content); ?> |
下面对上面的注意进行一下解释,如果在些你使用的是仅仅是文件名,而不是URL那么您这个文件中如果有使用引用文件比如require
('header.php');那么header.php中的内容将会显示不出来。
方法三:str_replace()
| <?php $filemodel="supply.php"; 字串5$file=fopen($filemodel,"w+"); $temp=fread($file,filesize($filemodel)); $temp=str_replace("[title]",$title,$temp); $temp=str_replace("[postTime]",$postTime,$temp); $temp=str_replace("[content]",$content,$temp); ?> |
该方法适用于很简单的页面,如果supply.php中有使用引用文件比如require('header.php');那么header.php中的内容将会显示不出来
我仅仅是给出了最简单的方法,在实际应用中,您可以写一个生成静态页的类,在类中加入相应的异常处理,该文件仅仅给出一个示例。
以上所分享的是关于也用PHP来实现网页静态发布的两种方法,下面是编辑为你推荐的有价值的用户互动:
相关问题:网页伪静态页面是如何实现的?
答:伪静态实现的原理就是 index.php?act=about&cid=1 将这种形式的动态路径用 about-1.html 这种形式输出,根据不同的服务器环境,配置方法也不太一样,PHP+iis6的话就要配置httpd.ini文件,php+iis7就要配置web.config,PHP+apache就要配置.htacces... >>详细
相关问题:php程序与静态网页的结合方式
答:静态网页 静态网页是相对于动态网页而言,是指没有后台数据库、不含程序和不可交互的网页。你编的是什么它显示的就是什么、不会有任何改变。静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。 在网站设计中,纯粹HTML格式的网页... >>详细
相关问题:PHP生成纯静态网页。
答:是吧,现在生成html的网址 一般是两种。 1.就是你上面说的,把PHP里面的内容读取一遍,再写入到对应的html页面里面。这种有个问题就是删除比较麻烦,操作io比较大 但是快。 2.伪静态,根据web服务器,按照规则显示。实际上还是PHP文件 只是看起... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
