PHP 输出缓冲到文本文件
我在更新脚本时遇到问题。它运行几个小时,所以我希望它能够实时输出到文本文件。
我在 while 循环中使用 then 开始文档
ob_start();
(因为它遍历数据库的记录)我有这个
$size=ob_get_length();
if ($size > 0)
{
$content = ob_get_contents();
logit($contents);
ob_clean();
}
最后是 logit 函数
function logit($data)
{
file_put_contents('log.txt', $data, FILE_APPEND);
}
但是日志文件仍然是空的。我做错了什么?
I am having trouble with an update script. It runs for a few hours so I would like it to output live to a text file.
I start the document with
ob_start();
Then within the while loop (as it iterates through the records of the database) I have this
$size=ob_get_length();
if ($size > 0)
{
$content = ob_get_contents();
logit($contents);
ob_clean();
}
And finally the logit function
function logit($data)
{
file_put_contents('log.txt', $data, FILE_APPEND);
}
However the log file remains empty. What am I doing wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
尝试
try
$contents
与$content
不是同一变量。$contents
is not the same variable as$content
.对于来这里寻找此功能的人,我今天写了一篇很好的文章:
示例用法:
For anyone coming here looking for a function for this, I wrote a nice one today:
Sample usage: