Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中将日期YYYY-MM-DD转换为历元_Php_Date_Time_Epoch - Fatal编程技术网

如何在PHP中将日期YYYY-MM-DD转换为历元

如何在PHP中将日期YYYY-MM-DD转换为历元,php,date,time,epoch,Php,Date,Time,Epoch,根据标题:如何在PHP中将字符串日期(YYYY-MM-DD)转换为历元(自1970年1月1日起的秒数)也许这回答了您的问题 以下是链接的内容: 有很多选择: 使用“strotime”: strotime将大多数英语日期文本解析为epoch/Unix时间 echo strtotime("15 November 2012"); // ... or ... echo strtotime("2012/11/15"); // ... or ... echo strtotime("+10 days");

根据标题:如何在PHP中将字符串日期(YYYY-MM-DD)转换为历元(自1970年1月1日起的秒数)

也许这回答了您的问题

以下是链接的内容:

有很多选择:

  • 使用“strotime”:
  • strotime将大多数英语日期文本解析为epoch/Unix时间

    echo strtotime("15 November 2012");
    // ... or ...
    echo strtotime("2012/11/15");
    // ... or ...
    echo strtotime("+10 days"); // 10 days from now
    
    检查转换是否成功很重要:

    // PHP 5.1.0 or higher, earlier versions check: strtotime($string)) === -1
    if ((strtotime("this is no date")) === false) {
       echo 'failed';
     }
    
    二,。使用DateTime类:

    PHP 5 DateTime类更易于使用:

    // object oriented
    $date = new DateTime('01/15/2010'); // format: MM/DD/YYYY
    echo $date->format('U'); 
    
    // or procedural
    $date = date_create('01/15/2010'); 
    echo date_format($date, 'U');
    
    日期格式“U”将日期转换为UNIX时间戳

  • 使用“mktime”:
  • 这个版本比较麻烦,但适用于任何PHP版本

    // PHP 5.1+ 
    date_default_timezone_set('UTC');  // optional 
    mktime ( $hour, $minute, $second, $month, $day, $year );
    
    // before PHP 5.1
    mktime ( $hour, $minute, $second, $month, $day, $year, $is_dst );
    // $is_dst : 1 = daylight savings time (DST), 0 = no DST ,  -1 (default) = auto
    
    // example: generate epoch for Jan 1, 2000 (all PHP versions)
    echo mktime(0, 0, 0, 1, 1, 2000); 
    
    使用
    strotime()
    它提供从1970年1月1日开始的Unix时间戳

    $date  = '2013-03-13';
    
    $dt   = new DateTime($date);
    echo $dt->getTimestamp();
    
    参考:

    使用以下功能:

    strtotime('2013-03-13');
    

    孤立链接被认为是一个糟糕的答案(请参阅),因为它本身毫无意义,而且目标资源也不能保证在将来仍然存在。请在此处包含答案的基本部分,并提供链接供参考。对不起,j0k不会再次出现:)在提问之前,您是否尝试搜索过?与这个话题相关的问题很多。以下是:更糟糕的是所有人都使用不必要的首字母缩略词并发表不必要的评论:这是怎么回事?也许你指的是搜索引擎,不是吗?也就是说StackOverflow,对不起。SE可能意味着StackExchange网络。Meta意味着Meta.stackoverflow.Meta是关于这个答案的有趣的小道消息。它仅适用于超过UNIX时代的日期。并不是说很多人需要更早的时间,但它不会产生负面影响。