当我在yii2项目中获得日期时,我遇到了问题。当我获得日期时间时,日期为真,但时间错误。我执行我的代码,结果是:
2016-05-02 12:30:28
而笔记本电脑的时间是:19:30。问题是什么?我在印度尼西亚使用时间。这是我的代码:
$time = new \DateTime('now', new \DateTimeZone('UTC'));
$model->tanggal_sampai = $time->format('Y-m-d H:i:s');
答案 0 :(得分:2)
首先,从List Of Supported TimeZones - php Manual了解印度尼西亚的timezone
然后,使用 config.php 文件使其在所有地方都很常见。在'timeZone'=>'Your TimeZone',
部分之后添加components
。
示例: config.php
<?php
$params = require(__DIR__ . '/params.php');
$config = [
'id' => 'basic',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'components' => [
.
.
.
],
'timeZone'=>'Asia/Kolkata',
'params' => $params,
];
答案 1 :(得分:1)
您要求UTC
时区new \DateTimeZone('UTC')
的时间。要么在你自己的时区要求它,我认为是WIB
:
$time = new \DateTime('now', new \DateTimeZone('WIB'));
或没有时区:
$time = new \DateTime('now');