Rumah >pembangunan bahagian belakang >tutorial php >介绍生成PHP网站页面静态化的方法_PHP教程

介绍生成PHP网站页面静态化的方法_PHP教程

WBOY
WBOYasal
2016-07-20 10:57:09945semak imbas

页面静态化的方法,分为两种,一种是伪静态,就是url 重写,一种是你真的静态化。下面介绍PHP中页面静态化的方法。

在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板、缓存等实现页面静态化,今天就以PHP实例教程形式讨论PHP生成静态页面的方法。

什么是PHP静态化

PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访客面前,PHP静态化分纯静态化和伪静态化,两者的区别在于PHP生成静态页面的处理机制不同。

PHP生成静态HTML页面的方法

1、利用PHP模板生成静态页面

PHP模板实现静态化非常方便,比如安装和使用PHP Smarty实现网站静态化。

2、使用PHP文件读写功能生成静态页面

PHP生成静态页面实例代码

<ol class="dp-c">
<li class="alt"><span><span>    </span></span></li>
<li>
<span class="vars">$out1</span><span> = "<title>PHP网站静态化教程</title>  </span>
</li>
<li class="alt"><span>欢迎访问PHP网站开发教程网www.leapsoul.cn,本文主要介绍PHP网站页面静态化的方法  </span></li>
<li><span>";   </span></li>
<li class="alt">
<span> </span><span class="vars">$fp</span><span> = </span><span class="func">fopen</span><span>(</span><span class="string">"leapsoulcn.html"</span><span>,</span><span class="string">"w"</span><span>);    </span>
</li>
<li>
<span class="keyword">if</span><span>(!</span><span class="vars">$fp</span><span>)    </span>
</li>
<li class="alt"><span>{    </span></li>
<li>
<span class="func">echo</span><span> </span><span class="string">"System Error"</span><span>;    </span>
</li>
<li class="alt">
<span class="func">exit</span><span>();    </span>
</li>
<li><span>}    </span></li>
<li class="alt">
<span class="keyword">else</span><span> {    </span>
</li>
<li>
<span>fwrite(</span><span class="vars">$fp</span><span>,</span><span class="vars">$out1</span><span>);    </span>
</li>
<li class="alt">
<span>fclose(</span><span class="vars">$fp</span><span>);    </span>
</li>
<li>
<span class="func">echo</span><span> </span><span class="string">"Success"</span><span>;    </span>
</li>
<li class="alt"><span>}    </span></li>
<li><span>?>  </span></li>
</ol>

3、使用PHP输出控制函数(Output Control)生成静态页面

输出控制函数(Output Control)也就是使用和控制缓存来生成静态HTML页面,也会使用到PHP文件读写函数。

PHP生成静态页面实例代码

<ol class="dp-c">
<li class="alt"><span><span>  </span></span></li>
<li><span>ob_start();  </span></li>
<li class="alt">
<span class="func">echo</span><span> </span><span class="string">""</span><span>.  </span>
</li>
<li>
<span class="string">""</span><span>.  </span>
</li>
<li class="alt">
<span class="string">"<title>PHP网站静态化教程</title>"</span><span>.  </span>
</li>
<li>
<span class="string">""</span><span>.  </span>
</li>
<li class="alt">
<span class="string">"欢迎访问PHP网站开发教程网www.leapsoul.cn,本文主要介绍PHP网站页面静态化的方法"</span><span>.  </span>
</li>
<li>
<span class="string">""</span><span>;  </span>
</li>
<li class="alt"><span> </span></li>
<li>
<span class="vars">$out1</span><span> = ob_get_contents();  </span>
</li>
<li class="alt"><span>ob_end_clean();  </span></li>
<li>
<span class="vars">$fp</span><span> = </span><span class="func">fopen</span><span>(</span><span class="string">"leapsoulcn.html"</span><span>,</span><span class="string">"w"</span><span>);  </span>
</li>
<li class="alt">
<span class="keyword">if</span><span>(!</span><span class="vars">$fp</span><span>)  </span>
</li>
<li><span>{  </span></li>
<li class="alt">
<span class="func">echo</span><span> </span><span class="string">"System Error"</span><span>;  </span>
</li>
<li>
<span class="func">exit</span><span>();  </span>
</li>
<li class="alt"><span>}  </span></li>
<li>
<span class="keyword">else</span><span> </span>
</li>
<li class="alt"><span>{  </span></li>
<li>
<span>fwrite(</span><span class="vars">$fp</span><span>,</span><span class="vars">$out1</span><span>);  </span>
</li>
<li class="alt">
<span>fclose(</span><span class="vars">$fp</span><span>);  </span>
</li>
<li>
<span class="func">echo</span><span> </span><span class="string">"Success"</span><span>;  </span>
</li>
<li class="alt"><span>}  </span></li>
<li><span>?> </span></li>
</ol>

我们知道使用PHP进行网站开发,一般执行结果直接输出到游览器,为了使用PHP生成静态页面,就需要使用输出控制函数控制缓存区,以便获取缓存区的内容,然后再输出到静态HTML页面文件中以实现网站静态化。

PHP生成静态页面的思路为:首先开启缓存,然后输出了HTML内容(你也可以通过include将HTML内容以文件形式包含进来),之后获取缓存中的内容,清空缓存后通过PHP文件读写函数将缓存内容写入到静态HTML页面文件中。PHP文件读写教程?

获得输出的缓存内容以生成静态HTML页面的过程需要使用三个函数:ob_start()、ob_get_contents()、ob_end_clean()。

知识点:

1、ob_start函数一般主要是用来开启缓存,注意使用ob_start之前不能有任何输出,如空格、字符等。

2、ob_get_contents函数主要用来获取缓存中的内容以字符串形式返回,注意此函数必须在ob_end_clean函数之前调用,否则获取不到缓存内容。

3、ob_end_clean函数主要是清空缓存中的内容并关闭缓存,成功则返回True,失败则返回False

PHP输出控制函数(Output Control)有很多应用,今后将陆续展开。

至此,使用PHP生成静态HTML页面以实现网站静态化的方法就介绍完了,根据实际情况和需求你可以选择不同的静态化方法。

原文地址:http://www.leapsoul.cn/?p=986


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/445791.htmlTechArticle页面静态化 的方法,分为两种,一种是伪静态,就是url 重写,一种是你真的静态化。下面介绍 PHP 中页面静态化的方法。 在PHP网站开发中...
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn