PHP的ob_start可以被调用一次吗?

Jas*_*vis 7 php

PHP的ob_start可以被调用一次吗?

对不起,如果这是一个愚蠢的问题,但我真的不知道.

我的网站真的很大(文件数量),它的社交网络和其中一个包含的文件使用ob_start PHP的输出缓冲区的东西,我不是很久以前其他人开始我的网站,现在它是我的我需要更多地了解它正在做什么.

无论如何我想使用ob_start("ob_gzhandler"); 压缩CSS文件和我的网站上的所有文件通过索引文件加载(包含)所以我想知道我是否能够使用它,即使它已经在代码中的其他地方使用?

zom*_*bat 15

是的,您可以多次调用它.但是每次都会创建一个新的缓冲区,所以要小心.

手册:"输出缓冲区是可堆叠的,也就是说,你可以调用ob_start()而另一个ob_start()是活动的.只需确保你调用ob_end_flush()适当的次数.如果多个输出回调函数是活动的,输出按嵌套顺序按顺序过滤每个输出."

  • 如果您需要知道嵌套的深度,或者您甚至在输出缓冲中,那么`ob_get_level`函数是完美的.http://ca.php.net/ob_get_level (4认同)