【问题标题】:PHP - Write console output to file AND to console?PHP - 将控制台输出写入文件和控制台?
【发布时间】:2017-09-30 05:14:00
【问题描述】:

我想将控制台输出写入文件和控制台本身。要将控制台输出写入我正在使用的文件:

ob_start();
...
...
$output = ob_get_contents();
file_put_contents("cronjob.txt", $output, FILE_APPEND);
ob_flush();

但现在我还想将输出打印到控制台,而不是将其写入文件。这可能吗?如果可以,我该怎么做?

您好,谢谢!

【问题讨论】:

  • 你试过回显$output吗?
  • ob_get_contents() 不会清除输出缓冲区,所以这段代码应该可以正常工作。
  • 在进度结束时,我也在控制台上看到了输出,但在执行期间看不到。我该怎么做?
  • 如果你想随时显示输出,为什么要缓冲?缓冲意味着将其保存在缓冲区中,直到您检索到这些内容。
  • “我该怎么做?” 完全移除输出缓冲,然后通过 tee 调用你的脚本:php file.php | tee log.txt

标签: php file console ob-start


【解决方案1】:

为什么不试试像这样的调试工具

  1. Xdebug Link
  2. Xdebug Toggler 用于 Safari

【讨论】:

  • 虽然您的意思肯定是好的,但 OP 正在寻找代码示例和解决方案,而不是额外/外部工具/插件
  • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
最近更新 更多