抑制函数可能产生的任何输出的最简单方法是什么?说我有这个:
function testFunc() { echo 'Testing'; return true; }
我想调用testFunc()并获得其返回值,而不会在页面中显示"Testing".假设这是在其他代码的情况下不输出其他的东西,是有这样的好方法?也许搞乱输出缓冲区?
是的,弄乱输出缓冲区就是答案.只需在调用输出的方法之前打开它(不是函数本身,但是在你调用它的地方,你可以将它包装在你的整个脚本或脚本流程中,但是你可以尽可能地使它"紧密"将它包裹在方法的调用周围):
function foo() { echo "Flush!"; return true; } ob_start(); $a = foo(); ob_end_clean();
并且不会生成任何输出.
干得好:
ob_start(); testFunc(); ob_end_clean();
"ob"代表"输出缓冲",请看这里的手册页:http://www.php.net/outcontrol