Zend Db Table delete() не работает должным образом
У меня есть следующий код:
$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
Только те, которые соответствуют критериям, удаляются. В чем проблема?
1 ответ
Решение
Вам просто нужно обернуть его в круглые скобки, чтобы time() - $time вычислялись правильно.
$where = 'active = false AND registration_time < ' . (time() - $time);