与简单的'return'相比,'ob_get_clean()'返回内容有什么好处?虽然'doSomething()'将以不同的方式工作'返回或回声'.使用一种方法比另一种方法有什么好处.
例如
ob_start(); $this->doSomething(); ob_get_clean();
- - 相比于 - -
return $this->doSomething();
h2ooooooo.. 10
他们是两个完全不同的东西.
return
从函数返回一个值.
ob_get_clean
返回自调用以来输入缓冲区的任何内容的字符串ob_start()
(在此特定示例中,您从未将此函数的输出设置为任何内容,因此您的代码不应执行任何操作).
使用return
:
function foo() { return 'abc'; } echo foo();
使用ob_get_clean
(注意我们echo
代替return
函数内部):
function foo() { echo 'abc'; } ob_start(); foo(); echo ob_get_clean();
除非您需要,否则不要使用输出缓冲区.