脚本宝典收集整理的这篇文章主要介绍了php – 当我使用多个ob_start()没有ob_end_clean()或ob_end_flush()时发生了什么?,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
ob_start(); echo "Hello x,"; ob_start(); echo "Hello y,"; ob_start(); echo "Hello z,"; ob_start(); echo "Hello World"; $ob_2 = ob_get_contents(); ob_end_clean(); echo "Galaxy"; $ob_1 = ob_get_contents(); ob_end_clean(); echo " this is OB_1 : ".$ob_1; echo "<br> and this is OB_2 : ".$ob_2;
此脚本的输出是:
你好,你好,这是OB_1:你好z,银河
这是OB_2:Hello World
——————————————–
为什么输出不是这样的?
这是OB_1:你好,你好z,银河
这是OB_2:Hello World
我错过了什么?
如果在本代码末尾再次调用ob_get_contents(),您将得到第二个缓冲区中的“Hello y”.如果您再次ob_end_close()然后ob_get_contents(),您将从第一个缓冲区获取“Hello x”.
以上是脚本宝典为你收集整理的php – 当我使用多个ob_start()没有ob_end_clean()或ob_end_flush()时发生了什么?全部内容,希望文章能够帮你解决php – 当我使用多个ob_start()没有ob_end_clean()或ob_end_flush()时发生了什么?所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。