我有这个问题,cron 每 5 分钟运行一次 php 脚本来更新列表。
但是,列表有 5% 的时间无法更新,并且列表最终为空白。我不相信它与 cron 有关,因为我认为在 100 次尝试中我未能手动生成列表两次。
我认为这与网站上有 50 多人有关时,它将无法生成,可能与服务器繁忙有关。我添加了一个检查以确保不是 MySQL 没有返回行(这似乎是不可能的),但它仍然让我相信 fwrite 失败了。
<?
$fileHandle = fopen("latest.html", 'w');
$links = array();
$query1 = $db_conn -> query("SELECT * FROM `views` ORDER BY `date` DESC LIMIT 0,20");
while ($result1 = $db_conn -> fetch_row($query1))
{
$result2 = $db_conn -> fetch_query("SELECT * FROM `title` WHERE `id` = '" . $result1['id'] . "'");
array_push($links, "<a href='/title/" . $result2['title'] . "'>" . $result2['title'] . "</a>");
}
if (count($links) > 0)
fwrite($fileHandle, implode(" • ", $links));
else
echo "Didn't work!";
fclose($fileHandle);
?>
该文件是否有可能正在使用中,因此最终无法正常工作并写入空白列表?