php - 为什么我不能使用 PHP 将我的 24 小时制转换为 12 小时制的上午/下午时间?

标签 php mysql codeigniter time unix-timestamp

我正在使用 Codeigniter,我遇到了一个问题,我在 MySQL 表中的 24 小时时间列被 ActiveRecord 提取并且只是拒绝转换为正确的上午/下午时间。

在我的数据库表中,我将时间存储为 22:00:00(晚上 10:00)。当我从数据库中提取值时,原始 Unix 时间似乎是 1349960400(它本身似乎不正确),当我通过日期和 strttotime 函数运行它时,它出现在下午 22:00。

我的代码是这样的:

function get_events_by_day($year, $month, $day)
{           
    $events = array();
    $query = $this->db->select('*')
                        ->from('calendar_events')
                        ->where('EventDate', "$year-$month-$day", 'after')
                        ->get();

    $events = $query->result(); 

    foreach($events as $event)
    {
        debug($event->EventStartTime); // prints 1349960400
        debug(strtotime($event->EventStartTime)); // prints 22:00
        $event->EventStartTime = date("H:i A", strtotime($event->EventStartTime));
        $event->EventEndTime = date("H:i A", strtotime($event->EventEndTime));
        debug($event->EventEndTime); // prints 22:00 PM
    }           

    return $events;
}

如有任何想法,我们将不胜感激。

最佳答案

date("h:i A", strtotime($event->EventEndTime));

应该可以解决。 H 为 24h,h = 12h

关于php - 为什么我不能使用 PHP 将我的 24 小时制转换为 12 小时制的上午/下午时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12846927/

相关文章:

php - 重命名并替换我的图像文件夹 php 中的图像

javascript - ajax php javascript 集成不起作用

php - 如何防止 PHP 中的 SQL 注入(inject)?

php - 将mysql数据库中的字符串转换为数组

mysql - 在 While 循环中执行插入的存储过程中出错

php - 如何防止在成员列表中显示登录用户?

php - Nginx 服务器的 CodeIgniter URL 重写

MySQL 查询使用 CASE 来 SELECT 多列

MySQL 在线与批处理 - 防止 MySQL cron 作业阻止在线查询的选项?

php - 如何使用 PHP 向用户发送每日电子邮件通知?