有没有一种方法可以在PHP中重定向输出


Is there a way to redirect an output in PHP?

有没有一种方法可以重定向php函数(如"echo")的输出行为,并使其在任何时候调用时都是新的输出,指向我提供的文件描述符?

有。您可以使用输出缓冲。

http://php.net/ob_start

<?php
function callback($buffer)
{
  return $buffer;
}
ob_start("callback");
?>

然后,当您echo任何东西时,您的callback()函数将被调用,您可以对输出执行任何您想要的操作。

您可以将stdout重定向到如下文件:

<?php
fclose(STDOUT);
$STDOUT=fopen('t.php.log', 'a');
echo "This is a test";
?>