php strtotime给出默认日期


php strtotime giving default date

我想将日期转换为另一种格式,但它显示默认日期。

$date ='2050-12-12 00:00:00';
echo $product_expire_date = date('Ymd', strtotime($date));

它显示默认日期19700101。

timestamp的有效范围通常是从Fri, 13 Dec 1901 20:45:54 UTCTue, 19 Jan 2038 03:14:07 UTC。(这些日期对应于32位带符号整数的最小值和最大值。)

http://php.net/strtotime#refsect1-函数.strtotime-notes

首先,您的日期超过了2038,因此您将获得默认日期。。。如果你只是想从这个字符串中得到日期,你可以分解字符串并像一样回显第一个索引

$date = explode(' ', '2050-12-12 00:00:00');
echo $date[0]; //Echoes date
echo $date[1]; //Echoes time

使用strtotime()date():

$originalDate = "2010-03-21";
$newDate = date("d-m-Y", strtotime($originalDate));

(请参阅PHP网站上的strtotime和date文档)。

试试这个:

<?php
$date       =    '2050-12-12 00:00:00';
$newdate     =    explode(" ",$date);
$newdate1    =    explode("-",$newdate[0]);
echo $newdate1[0].$newdate1[1].$newdate1[2];
?>