如何在三天内发送通知?

时间:2015-12-22 13:01:12

标签: yii

如何编写查询以在用户包在Yii中3天后过期时发送通知?

例如,帐户已在25th Dec上过期,然后在26th, 27th and 28th Dec上发送过期的电子邮件。

$expireddate = date('Y-m-d', strtotime('-3 days')); // (Coming from db)
$model = TblPackageUserplan::model()->findAll('expire_date>=:expire_date', array(':expire_date' => $expireddate));

它无法正常工作,因为它也会在20th Dec之前发送邮件。 我想在3天后发送确切用户包已过期的邮件。如何让用户详细信息包在3天后过期?

1 个答案:

答案 0 :(得分:1)

您只能使用标准。

截至您的问题

  

于12月25日到期,然后在12月26日,27日和28日发送过期电子邮件

您需要比较expire_date + 3days。

$criteria = new CDbCriteria;
// With this condition we get only packages on next three days after expire_date.
$criteria->addCondition('DATEDIFF(CURRENT_DATE(),t.expire_date) BETWEEN 1 AND 3');