PHP日期转换YYMMDD到yyyy-mm-dd

时间:2015-02-24 10:54:12

标签: php mysql date date-conversion

您好我正在努力转换字符串:

$file = '150220';

成为mysql日期格式。

我试过这个

$newDate = date("Y-m-d", strtotime($file));

但它返回以下2015-02-24(今天是24日)

2 个答案:

答案 0 :(得分:4)

请参阅:http://php.net/manual/en/datetime.createfromformat.php

所以你可以使用它:

$dateTime = DateTime::createFromFormat('ymd', $file);
$newDate = $dateTime->format('Y-m-d');

答案 1 :(得分:1)

strtotime是一个很棒的功能。它适用于您提供YYYY-MM-DD格式但不适用于YY-MM-DD。

编辑:如评论中所述,您必须通过预先添加' 20'将字符串转换为有效的ISO8601 Notations格式。 - 这可以通过文档"

中指定的strtotime来理解

这将适用于未来85年的64位系统(在32位系统上直到2038年)

$file = '150220';
$newDate = date("Y-m-d", strtotime("20$file"));

你必须小心使用strtotime,因为它会在出现错误时返回false,这会使今天使用date

编辑:如果你想-1:首先,这段代码有效,它解释了为什么运算代码不起作用,然后考虑使用"添加注释"按钮。感谢。