php - 显示今天的生日

标签 php mysql date

我想显示过生日的用户的用户名。 生日作为 DATE 存储在数据库中的 birthdays 列中。

这是我当前的代码:

<?php
function birthday_today(){
    $current_date = date('m-d');
    $row = mysql_query("SELECT `username`, `birthday` FROM `users` WHERE MONTH(birthday) = MONTH(NOW()) AND DAY(birthday) = DAY(NOW())");
    if (date('m-d', strtotime($row['birthday'])) == date('m-d')) {
        return '<ul><li>' . implode('</li><li>', $row['username'], '</li></ul>');
    }
}
echo birthday_today();
?>

然而,这似乎并没有回应任何东西。我尝试了几种不同的方法将数据放入 echo 中,但到目前为止没有成功。有没有人可以帮助我?

最佳答案

您需要从结果中提取数组。

$users = array();
$row = mysql_query("SELECT `username`, `birthday` FROM `users` WHERE MONTH(birthday) = MONTH(NOW()) AND DAY(birthday) = DAY(NOW())");
while ($result = mysql_fetch_array($row)) {
    if (date('m-d', strtotime($result['birthday'])) == date('m-d')) {
        $users[] = $result['username'];
    }
}



// output results
echo "<ul>";
foreach ($users as $user) {
   echo "<li>".$user['username']."</li>";
}
echo "</ul>"

关于php - 显示今天的生日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30440406/

相关文章:

php - 网站上需要邮政编码定位器功能。从哪儿开始?

PHP DateTime操作-设置新时区并扣除24小时

php - 如何从MySQL列中获取最高值

php - 基于日期时间的 Sphinx 搜索

mysql - 在 MySQL 查询中选择和使用变量

php - MySQL自增不重复

java - "2011-07-27T06:41:11+00:00"日期格式错误

c++ - 在 C++ 中将字符串转换为日期

php - 根据数据库中的表检查 url

在 Ubuntu 上安装 PHP 扩展