obstartphp
1. php页面里ob_start() 开启缓存 打开速度就会变快么
ob_start — 打开输出控制缓冲
此函数将打开输出缓冲。当输出缓冲激活后,脚本将不会输出内容(除http标头外),相反需要输出的内容被存储在内部缓冲区中。
内部缓冲区的内容可以用 ob_get_contents() 函数复制到一个字符串变量中。
想要输出存储在内部缓冲区中的内容,可以使用 ob_end_flush() 函数。另外,
使用 ob_end_clean() 函数会静默丢弃掉缓冲区的内容。
-----------------------
直接使用缓存,不再重新渲染生成html,当然会变快。
2. php中 ob_start()有什么作用呢
<?php
ob_start();//开启缓冲区
echo "这是第一次输出内容!\n";
$ff[1] = ob_get_contents() ; //获取当前缓冲区内容
ob_flush();//缓冲器清除
echo "这是第二次输出内容!\n";
$ff[2] = ob_get_contents() ; //获取当前缓冲区内容
echo "这是第三次输出内容!\n";
$ff[3] = ob_get_contents() ; //获取当前缓冲区内容
echo "<pre>";
print_r($ff);
//明白怎么用了吧~ 这些函数一般是用来获取 页面的执行结果的,可以用来作缓存 或者 Ajax 调试时的追踪
//请采纳~ 谢谢
?>
3. PHP中ob_start是什么功能
ob是output buffering的简称,就是输出缓冲区。如果使用了ob_start函数,那么之后的输出内容(echo等)就不进行实际输出,而是存入缓冲区里面,随后可以使用ob_flush实际输出、ob_clean删除、ob_get_contents获得内容保存到静态文件等。
使用输出缓冲区有两个主要的好处:一是可以在输出一些内容之后在设置header(例如cookie等),使得程序设计的逻辑性变得简单;二是可以对缓冲区里面的输出内容撤销、删除、压缩、保存到文件等操作。
相关的操作是使用一系列的ob_函数来实现的,常用的有下面这些,通过函数名称可以猜测其功能,需要获得详细帮助可以查看文档或者网络搜索:
ob_clean — Clean (erase) the output buffer
ob_end_clean — Clean (erase) the output buffer and turn off output buffering
ob_end_flush — Flush (send) the output buffer and turn off output buffering
ob_flush — Flush (send) the output buffer
ob_get_clean — Get current buffer contents and delete current output buffer
ob_get_contents — Return the contents of the output buffer
ob_get_flush — Flush the output buffer, return it as a string and turn off output buffering
ob_get_length — Return the length of the output buffer
ob_get_level — Return the nesting level of the output buffering mechanism
ob_get_status — Get status of output buffers
ob_gzhandler — ob_start callback function to gzip output buffer
ob_implicit_flush — Turn implicit flush on/off
ob_list_handlers — List all output handlers in use
ob_start — Turn on output buffering
output_add_rewrite_var — Add URL rewriter values
output_reset_rewrite_vars — Reset URL rewriter values
4. php中“ ob_start()”有什么作用呢
开启缓冲区,缓冲器清除。
5. php框架中的初始文件一般会判断用ob_start('ob_gzhandler')还是ob_start(),那ob_end_clean在哪里呢
开始的时候用ob_start、ob_start('ob_gzhandler')都可以,后者能压缩输出内容,效果是浪费一点服务器的CPU、节省网络流量。
ob_end_clean一般都不用,功能是清除缓冲区并关闭缓冲功能,相当于数据库的rollback。
刷新输出缓冲区的语句可以不用,程序运行完毕会自动刷新输出。
再看看别人怎么说的。