使用ob系列函数使PHP网页静态化

PHP的执行页预先转换成HTML,这是所谓的PHP静态方法之一。

还有其他的方法,如更换模板,opcache等等。

静态效应:

提高网站的响应速度,减少服务器的负载。

搜索引擎优化;

利用PHP输出缓冲直接编写html,定时后台扫时间的网站,是一个比较容易实现的静态网页。

在静态:


< PHP
($ i = 0;$ i < 1000;$ + +){
回声公牛;
}
>



静态:


< PHP
ob_start();
($ i = 0;$ i < 1000;$ + +){
回声公牛;
}
$str = ob_get_contents();
ob_end_clean();
$ FP = fopen(HTML测试。
fwrite($ FP,$str);
Fclose($ FP);
成功写入;
>



该代码将预先形成的,一个test.html这是,事实上,用空间换时间。像新闻网站一样,内容基本上不会改变,这更适合静态HTML。

当用户有访问权限时,直接在这个HTML页面上可用。

只需用Apache基准测试效果:

ab.exe - N1000 - C10



在超过90%的连接,不同的是至少为150毫秒。相比于复杂的PHP,计算了HTML的数量依然不少。

相关函数简介



1、刷新:刷新缓冲区的内容、输出。

功能格式:同花顺()

说明:这个功能经常被使用,而且效率很高。

2、ob_start:打开输出缓冲区

函数的格式:ob_start虚空(void)

描述:当缓冲区被激活,所有非文件头信息从PHP程序将不会发送,而是保存在内部缓冲区,输出缓冲区的内容,你可以使用ob_end_flush()或冲洗()输出缓冲区的内容。

3、ob_get_contents:返回的内部缓冲区的内容。

使用方法:字符串ob_get_contents(void)

描述:此函数返回当前缓冲区中的内容,如果没有激活输出缓冲区,则返回false。

4、ob_get_length:返回的内部缓冲区的长度。

使用方法:int ob_get_length(void)

描述:该函数返回当前缓冲区的长度;喜欢ob_get_contents,如果没有激活输出缓冲区。然后返回false。

5、ob_end_flush:发送的内部缓冲区的内容到浏览器,并关闭输出缓冲区。

使用方法:ob_end_flush虚空(void)

描述:此函数发送输出缓冲区的内容(如果有的话)。

6、ob_end_clean:删除内部缓冲区的内容,并关闭内部缓冲区

使用方法:ob_end_clean虚空(void)

描述:此函数不输出内部缓冲区的内容,但会删除它!

7、ob_implicit_flush:打开或关闭绝对刷新

使用方法:无效ob_implicit_flush({ int标志})

注:大家都知道|美元= x使用Perl的意思,这个字符串可以打开/关闭缓冲区,并ob_implicit_flush功能等,默认是关闭的缓冲区,在每个脚本的输出是直接发送到浏览器打开的绝对输出,不再需要调用flush()。