PHP 日期显示转换后 '1970-01-01 '

2022-08-30 13:14:33

我有一个日期格式为的表格。为了搜索数据库,我将日期格式简化为.但是当我它时,它显示.PHP代码如下:dd/mm/yyyyyyyy-mm-ddecho1970-01-01

$date1 = $_REQUEST['date'];     
echo date('Y-m-d', strtotime($date1));

为什么会发生这种情况?如何将其格式化为?yyyy-mm-dd


答案 1

替换为 :/-

$date1 = strtr($_REQUEST['date'], '/', '-');
echo date('Y-m-d', strtotime($date1));

答案 2

1970年1月1日是所谓的Unix时代。这是他们开始计算Unix时间的日期。如果将此日期作为返回值,则通常意味着将日期转换为 Unix 时间戳时返回(接近)零的结果。因此,日期转换不会成功。很可能是因为它接收到错误的输入。

换句话说,您返回 0,这意味着以 strtotime 函数的不受支持的格式传递。strtotime($date1)$date1


推荐