Codeigniter を使用していますが、MySQL テーブルの 24 時間の時刻列が ActiveRecord によって取得され、適切な午前/午後の時刻への変換を単に拒否するという問題があります。
私の DB テーブルには、時刻が 22:00:00 (午後 10:00) として保存されています。データベースから値を取得すると、生の Unix 時刻は 1349960400 のように表示され (それ自体は正しくないようです)、date & strttotime 関数を実行すると 22:00 PM と表示されます。
これは私のコードがどのように見えるかです:
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;
}
どんな考えでも大歓迎です。