Php 是否找到日期格式的意外数据?
数据库中UTC中的istimestamp字段不为空,值为:2019-08-09 20:06:08 我尝试使用以下函数将此时间转换为本地时间:Php 是否找到日期格式的意外数据?,php,invalidargumentexception,Php,Invalidargumentexception,数据库中UTC中的istimestamp字段不为空,值为:2019-08-09 20:06:08 我尝试使用以下函数将此时间转换为本地时间: private function toLocalTime($dateInUTC) { $time = strtotime($dateInUTC.' UTC'); return date("d/m/Y H:i", $time); } 转换为: 在我调用$this->toLocalTime的线路上,我得到异常: 我尝试过以下代
private function toLocalTime($dateInUTC) {
$time = strtotime($dateInUTC.' UTC');
return date("d/m/Y H:i", $time);
}
转换为:
在我调用$this->toLocalTime的线路上,我得到异常:
我尝试过以下代码:
也许我的$timestamp某处是空的?因为我可以看到你的项目中有碳:
$timestamp = '2019-08-09 10:41:00';
$date = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'UTC');
$date->setTimezone('America/Argentina/Buenos_Aires'); // or your timezone
$new_date = $date->format('Y-m-d H:i:s'); // or your new format
在您的示例中:
private function toLocalTime($dateInUTC)
{
// parse your date with carbon and set that as UTC
$date = Carbon::createFromFormat('Y-m-d H:i:s', $dateInUTC, 'UTC');
// set your timezone to get a local time.
$date->setTimezone('America/Argentina/Buenos_Aires'); // or your timezone
return = $date->format('Y-m-d H:i:s'); // or your new format
}
如果您没有使用本机php安装Carbon作为示例:
private function toLocalTime($dateInUTC)
{
$utc_date = \DateTime::createFromFormat('Y-m-d H:i:s', $dateInUTC), new DateTimeZone('UTC'));
$utc_date->setTimeZone(new \DateTimeZone('America/Argentina/Buenos_Aires'); // or your timezone
return $utc_date->format('Y-m-d H:i:s'); // or your new format
}
循环一个空数组是否将$response设置为一个空数组,然后在其上循环?哪个函数抛出意外的数据发现错误?看起来您在那里找到了跟踪。响应数组为空。顺便说一句,使用gmdated/m/Y H:i,strotime$v->created_at将直接给您UTC时间,请参见php.net文档中的。数组已填充,我只是简短地告诉您是否更新了时区。例如:“美国/阿根廷/布宜诺斯艾利斯”我安装了碳排放装置,也许是现场创建的无糖Laravel模型的问题?是的,但你们需要让你们的时区来定义它。你在哪里?假设我有碳日期而不是字符串日期,如何设置时区?
private function toLocalTime($dateInUTC)
{
// parse your date with carbon and set that as UTC
$date = Carbon::createFromFormat('Y-m-d H:i:s', $dateInUTC, 'UTC');
// set your timezone to get a local time.
$date->setTimezone('America/Argentina/Buenos_Aires'); // or your timezone
return = $date->format('Y-m-d H:i:s'); // or your new format
}
private function toLocalTime($dateInUTC)
{
$utc_date = \DateTime::createFromFormat('Y-m-d H:i:s', $dateInUTC), new DateTimeZone('UTC'));
$utc_date->setTimeZone(new \DateTimeZone('America/Argentina/Buenos_Aires'); // or your timezone
return $utc_date->format('Y-m-d H:i:s'); // or your new format
}