PHP:Codeigniter在两个日期内获得即将到来的生日


PHP: Codeigniter get upcoming birthdays within two dates

>我有一个这样的员工表

id   name   dob
1    Vik    1990-01-12
2    Arm    1992-02-08
3    Loki   1992-02-19
4    Ram    1986-11-23
5    Suri   1996-03-02
今天是2015-02-05

,现在我要那些在2015-02-01到2015-02-28之间生日的记录。意味着输出将是

2    Arm    1992-02-08
3    Loki   1992-02-19

我只熟悉Codeigniter,所以我的要求是请根据CI查询写下您的答案。

SELECT * FROM `employees` WHERE MONTH(dob) = 2 AND (DAY(dob) >= 1 AND DAY(dob) < 29);

测试。

最好

直接从数据库中提取信息,这样您就不需要抓取所有记录并执行循环。

@Tpojka示例的另一种选择是,如果使用 MySQL,则使用 BETWEEN 函数:

SELECT * FROM `employees` WHERE dob BETWEEN $start_date AND $end_date;

要在 CodeIgniter 中使用它,您需要先设置数据库配置,然后才能执行以下操作:

$this->db->query('SELECT * FROM `employees` WHERE dob BETWEEN ? AND ?;', array($start_date, $end_date));