【问题标题】:PHP equivalent of UNIX_TIMESTAMP() of MySQL?PHP 相当于 MySQL 的 UNIX_TIMESTAMP()?
【发布时间】:2009-12-08 12:46:18
【问题描述】:

在 MySQL 中:

select UNIX_TIMESTAMP('2009-12-08 21:01:33') ;

我需要从 PHP 中获取值。

【问题讨论】:

    标签: php mysql unix-timestamp


    【解决方案1】:
    echo time();
    

    echo strtotime('now');
    

    strtotime 将:

    解析任何英文文本 日期时间描述到 Unix 时间戳

    所以你可以试试:

    echo strtotime('2009-12-08 21:01:33');
    

    【讨论】:

      【解决方案2】:

      【讨论】:

        【解决方案3】:
        mktime(21, 1, 33, 12, 8, 2009); // mktime($hours, $minutes, seconds, $month, $day, $year)
        

        此外,mktime() 函数也可用于此目的。但是您需要提供参数,但此功能的一个优点是 - 您可以获得所需日期和时间的时间戳,而不仅仅是当前时间戳。

        您还需要从值的开头删除“0”。在其他情况下,这些值将被识别为八进制。(08 => 8, 01=>1)。

        【讨论】:

          【解决方案4】:

          如果您不询问 php.ini 中哪个是等效的 UNIX_TIMESTAMP 函数。但是您问如何将 UNIX_TIMESTAMP() 返回值转换为 php DateTime 对象。然后,您可以在 SQL 查询返回的时间前面加上一个“@”,然后再将它传递给 DateTime 构造函数。

          像这样:

          $tm = new DateTime('@' . $sqlrow['time']);
          

          【讨论】:

            猜你喜欢
            • 2011-01-01
            • 2016-01-01
            • 2011-08-17
            • 1970-01-01
            • 2011-10-16
            • 1970-01-01
            • 1970-01-01
            • 2010-10-31
            • 1970-01-01
            相关资源
            最近更新 更多