使用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()。