php 输出缓冲、静态化
flush — 刷新输出缓冲
ob_clean — 清空(擦掉)输出缓冲区
ob_end_clean — 清空(擦除)缓冲区并关闭输出缓冲
ob_end_flush — 冲刷出(送出)输出缓冲区内容并关闭缓冲
ob_flush — 冲刷出(送出)输出缓冲区中的内容
ob_get_clean — 得到当前缓冲区的内容并删除当前输出缓。
ob_get_contents — 返回输出缓冲区的内容
ob_get_flush — 刷出(送出)缓冲区内容,以字符串形式返回内容,并关闭输出缓冲区。
ob_get_length — 返回输出缓冲区内容的长度
ob_get_level — 返回输出缓冲机制的嵌套级别
ob_get_status — 得到所有输出缓冲区的状态
ob_gzhandler — 在ob_start中使用的用来压缩输出缓冲区中内容的回调函数。ob_start callback function to gzip output buffer
ob_implicit_flush — 打开/关闭绝对刷送
ob_list_handlers — 列出所有使用中的输出处理程序。
ob_start — 打开输出控制缓冲
output_add_rewrite_var — 添加URL重写器的值(Add URL rewriter values)
output_reset_rewrite_vars — 重设URL重写器的值(Reset URL rewriter values)
局部纯静态:有的部分用ajax获取数据
全部纯静态:完全是静态数据
伪静态:url看起来是静态的,实际是动态页面,为了搜索引擎优化以及好看,
伪静态实现方法:php 正则处理 $_SERVER['PATH_INFO'] 或 nginx rewrite
php缓冲区:当echo,print等输出用户数据的时候,输出数据都会写入到php output_buffering中,直到output_buffering写满,才会将这些数据通过tcp传送给浏览器显示。
默认情况下,php buffer是开启的,默认大小是4096,即4kb。
php.ini :output_buffering=on
代码里开启:ob_start();
<?php
//获取数据
//引入html模板文件
...
ob_start();
//将缓冲区内容写入文件并清空缓冲区
file_put_contents( "index.html", ob_get_clean() )
生成静态页面的方式:
1、后台按钮。2、定时任务。3、访问时判断页面存在时间,超时则重新生成。