私のサイトがすべてのdatetime変数を-1時間として表示している理由に気付きました...初めてCodeigniterを使用しています! (以前はこの問題はありませんでした)
そのため、メインの index.php ファイルに次のコードを含めました。
/*
|---------------------------------------------------------------
| DEFAULT TIMEZONE
|---------------------------------------------------------------
|
| Set the default timezone for date/time functions to use if
| none is set on the server.
|
*/
if( ! ini_get('date.timezone') )
{
date_default_timezone_set('GMT');
}
ただし、まだ-1時間と表示されているため、MySQLのデフォルト設定を設定する必要があると想定しています...
モデルに次のコード行を含めました。
function __construct()
{
// Call the Model constructor
parent::__construct();
$this->db->query("SET time_zone='+0:00'");
}
それでも違いはありません...助けて!
私のコードは次のとおりです。
<h3><?=date('D, jS F @ g:ia', strtotime($row->datetime))?></h3>
$row->datetime 変数は、MySQL データベースの DATETIME 列の値にすぎません。ビューでエコーされた変数は、データベースの値よりも常に 1 時間少ないです...
私のモデルコードは次のとおりです。
function coming_up()
{
$this->db->query("SET time_zone='+0:00'");
$query = $this->db->query('SELECT * FROM events1 WHERE datetime >= NOW() ORDER BY datetime LIMIT 2');
return $query->result();
}