【发布时间】:2009-12-08 12:46:18
【问题描述】:
在 MySQL 中:
select UNIX_TIMESTAMP('2009-12-08 21:01:33') ;
我需要从 PHP 中获取值。
【问题讨论】:
标签: php mysql unix-timestamp
在 MySQL 中:
select UNIX_TIMESTAMP('2009-12-08 21:01:33') ;
我需要从 PHP 中获取值。
【问题讨论】:
标签: php mysql unix-timestamp
echo time();
或
echo strtotime('now');
strtotime 将:
解析任何英文文本 日期时间描述到 Unix 时间戳
所以你可以试试:
echo strtotime('2009-12-08 21:01:33');
【讨论】:
【讨论】:
mktime(21, 1, 33, 12, 8, 2009); // mktime($hours, $minutes, seconds, $month, $day, $year)
此外,mktime() 函数也可用于此目的。但是您需要提供参数,但此功能的一个优点是 - 您可以获得所需日期和时间的时间戳,而不仅仅是当前时间戳。
您还需要从值的开头删除“0”。在其他情况下,这些值将被识别为八进制。(08 => 8, 01=>1)。
【讨论】:
如果您不询问 php.ini 中哪个是等效的 UNIX_TIMESTAMP 函数。但是您问如何将 UNIX_TIMESTAMP() 返回值转换为 php DateTime 对象。然后,您可以在 SQL 查询返回的时间前面加上一个“@”,然后再将它传递给 DateTime 构造函数。
像这样:
$tm = new DateTime('@' . $sqlrow['time']);
【讨论】: