我有以下代码:
$time = 60 * 60 * 24 * 3;
$usersTable = new Application_Model_Db_Users();
$where = 'active = false AND registration_time < ' . time() - $time;
$usersTable->delete($where);
但是当它运行时它会删除表中的所有行,就像我运行时一样
DELETE FROM users
WHERE active = false
AND registration_time < 1290500000
仅删除符合条件的内容。有什么问题?
答案 0 :(得分:3)
你只需要用括号括起来,以便time() - $ time正确评估。
$where = 'active = false AND registration_time < ' . (time() - $time);