Php 带有 strtotime 的 unix 时间戳
Php unix timestamp with strtotime
我开始学习 PHP 并且很清楚我在这里犯了一些错误,我尝试获取一天中特定小时和分钟的 Unix 时间戳:
<?php
date_default_timezone_set('America/Argentina/Buenos_Aires');
$data = new DateTime();
$datafmt = $data->format('Y-m-d');
echo strtotime($datafmt,'18:30:00');
?>
代码 return 1554951600
等于:
GMT: Thursday, April 11, 2019 3:00:00 AM
Your time zone: Thursday, April 11, 2019 12:00:00 AM GMT-03:00
这是错误的,时间戳应该是:
1555018200
等于:
GMT: Thursday, April 11, 2019 9:30:00 PM
Your time zone: Thursday, April 11, 2019 6:30:00 PM GMT-03:00
我做错了什么?
已修复!
echo strtotime($datafmt. '18:30:00');
,
而不是 .
那是我的错误!
你根本不需要strtotime()
。 DateTime
class 是替代品,功能更强大。只需将时间传递给构造函数或使用 setTime()
方法设置它
<?php
date_default_timezone_set('America/Argentina/Buenos_Aires');
$data = new DateTime('18:30:00');
// Alternative ways to set the time of the DateTime object
// $data->setTime('18', '30', '00');
// $data->setTime(...explode(':', '18:30:00'));
$datafmt = $data->format('U'); // U means UNIX timestamp
echo $datafmt;
我开始学习 PHP 并且很清楚我在这里犯了一些错误,我尝试获取一天中特定小时和分钟的 Unix 时间戳:
<?php
date_default_timezone_set('America/Argentina/Buenos_Aires');
$data = new DateTime();
$datafmt = $data->format('Y-m-d');
echo strtotime($datafmt,'18:30:00');
?>
代码 return 1554951600
等于:
GMT: Thursday, April 11, 2019 3:00:00 AM
Your time zone: Thursday, April 11, 2019 12:00:00 AM GMT-03:00
这是错误的,时间戳应该是:
1555018200
等于:
GMT: Thursday, April 11, 2019 9:30:00 PM
Your time zone: Thursday, April 11, 2019 6:30:00 PM GMT-03:00
我做错了什么?
已修复!
echo strtotime($datafmt. '18:30:00');
,
而不是 .
那是我的错误!
你根本不需要strtotime()
。 DateTime
class 是替代品,功能更强大。只需将时间传递给构造函数或使用 setTime()
<?php
date_default_timezone_set('America/Argentina/Buenos_Aires');
$data = new DateTime('18:30:00');
// Alternative ways to set the time of the DateTime object
// $data->setTime('18', '30', '00');
// $data->setTime(...explode(':', '18:30:00'));
$datafmt = $data->format('U'); // U means UNIX timestamp
echo $datafmt;