我在php中使用fwrite记录logs.txt中的一些错误。fwrite多次保存相同的消息
问题是,当我打开db_errors.txt时,我看到消息多次保存而不是一次。
我的fwrite代码不在任何循环内部,所以它只能执行一次。使用第三方记录器类也是如此。
if (!$result = mysqli_query($link, $query)){
$today = getdate();
$handle = fopen("logs/db_errors.txt", "a");
fwrite($handle, $today['mday'].'/'.$today['mon'].'/'.$today['year']." | ".mysqli_errno($link)." : ".mysqli_error($link)." | ".$query." \n");
fclose($handle);
}
这将在db_errors.txt中的3行内写入相同的输出。
11/4/2011 | 1054 : Unknown column 'uids' in 'field list' | SELECT uids FROM users WHERE user_id=6 LIMIT 1
11/4/2011 | 1054 : Unknown column 'uids' in 'field list' | SELECT uids FROM users WHERE user_id=6 LIMIT 1
11/4/2011 | 1054 : Unknown column 'uids' in 'field list' | SELECT uids FROM users WHERE user_id=6 LIMIT 1
如何向我们展示您的代码? – PeeHaa 2011-04-11 19:02:53
问题的标题是有趣的,给定的问题 – MJB 2011-04-11 19:13:05
“代码不在任何自我调用函数”是什么意思?如果你不调用它,它怎么被调用? – netcoder 2011-04-11 19:53:24