获取Date,比较Date,得到我应该在PHP中使用的小时的最佳功能是什么

时间:2015-02-25 13:15:06

标签: php date time

我创建了具有产品的在线商店,我希望系统获取用户发布产品的时间和日期,并将时间存储到数据库中,并且我还希望根据他们的输入时间显示产品。

所以我的问题是:获取日期的最佳功能是什么,比较日期,得到我应该在php中使用的小时?

我从互联网上得到一些建议,我应该使用time()获得第二个并转换它

这是处理这些

的简单代码
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <?php
            function secondToYear($sec){
                $year = $sec * 0.0000000316887646;
                return $year;
            }

            function secondToMonth($sec){
                $month = $sec * 0.000000380265176;
                return $month;
            }

            function secondToDay($sec){
                $day = $sec * 0.0000115740741;
                return $day;
            }

            $second = time();
            echo "second : ".$second;//in second
            ?>
            <br>
            <?php
            echo "year : ".  secondToYear($second);
            ?>
            <br>
            <?php
            echo "month : ".  secondToMonth($second);
            ?>
            <br>
            <?php
            echo "days : ". secondToDay($second);
            ?>
    </body>
</html>

我从谷歌获得了公式,但是当我将结果与this的结果进行比较时,它没有匹配

2 个答案:

答案 0 :(得分:1)

查看DateTime课程及其同伴(DateTimeZoneDateInterval)。 95%的日期和时间处理都需要它们。

从传统的PHP date & time functions列表中,查看strtotime()(它解析时间的英文表示并生成时间戳值),strftime()(如果您需要表达日期)用英语以外的其他语言;它与setlocale())和time()一起使用(如果你需要当前时间戳用于任何数字目的,比如将它用作伪随机数)。大多数其他函数要么在普通的PHP应用程序中不需要,要么它们的功能由DateTime类及其朋友提供。

答案 1 :(得分:1)

<强>基本

// Current time
echo date("Y-m-d", time());

// 2013-12-01
echo date("Y-m-d", 1385925192);

-

格式输出日期 DateTime对象具有日期值,您可以使用format()方法输出此值并指定要返回的格式。

echo $date->format('Y-m-d');

输出时间戳 如果要将DateTime值输出为时间戳,则将使用方法getTimestamp()。

$date = new DateTime();
echo $date->getTimestamp();

更改日期 要更改对象上的日期,您将使用setDate()方法。

$date = new DateTime();

// Outputs 2001-02-03
$date->setDate(2001, 2, 3);
echo $date->format('Y-m-d');

比较两个日期

$date1 = new DateTime('May 13th, 1986');
$date2 = new DateTime('October 28th, 1989');

$difference = $date1->diff($date2);

检查一下: http://www.paulund.co.uk/datetime-php

和php.net手册: http://php.net/manual/en/class.datetime.php