phpMyAdmin(mySQL)中发生的非常奇怪的事情......
情况:
我有一张表,其中只有一个字段包含一个名为“count”的 INT 值。count 最初设置为 0。cron 作业每小时调用一个 php 脚本,该脚本将 'count' 增加 1 (SET count = count + 1)
。
问题:
当我在 phpMyAdmin 中打开表格时可以观察到问题,然后立即刷新浏览器:我可以看到“计数”在一秒钟内增加了 20 倍。让它静置一分钟,然后再次刷新浏览器表明它已经增加了数百次!某处是否有无限循环调用我的 cron 工作并增加“计数”?(不要这么认为,因为我更新了 crob php 脚本,以便在它被调用时向我发送电子邮件,而且我没有接到任何电话......)
有没有人发生过这样的事情?
CRON 字符串:
*/15 * * * * /usr/bin/php -q /home/account_name/cron/cron.php test
php脚本:
<?php
class TestCommand extends CConsoleCommand {
private $connection;
public function run($args) {
// Increment counter
$this->connection=Yii::app()->db;
$sql="UPDATE count_converts SET count=count+1 WHERE id=1";
$command=$this->connection->createCommand($sql);
$command->execute();
}
}
?>
更新:
谜团已解决:发现这是由于在其他地方嵌套了错误的 for 循环(两个循环都使用了 $i)...