如何使用PHP更改日期格式?



我输入字符串:'10/22',其中10是月数,22是年数。我需要把它转换成dd-mm-yyyy日期。所以我写了一个脚本:

<?php
$date = '10/22'; // m-y date
$date = '01/' . $date; // Gets d-m-y date (01/10/22)
$base_year = 2000;
$date_parts = explode('/', $date);
$date_parts[2] = strval(intval($date_parts[2]) + $base_year); // Gets 4 digits year (2022)
$date = implode('/', $date_parts); // Joins array elements with a string
$new_date = str_replace('/', '-', $date);
$dmy = DateTime::createFromFormat('d-m-Y', $new_date)->format('d-m-Y'); // Creates date with specified format
echo $dmy; // Will display 01-10-2022, this is what I need

但我担心这种方式太糟糕了,我需要帮助,使这个脚本更优化,如果这样的方式存在。任何建议吗?

只需两行就可以完成此操作,在/上爆炸当前日期,然后在稍后使用array_merge内爆它们,如下所示:

<?php
$date = '10/22'; // m-y date
function getFormattedDate($date){
list($month,$year) = explode("/", $date);
return implode("-",array_merge(["01"], [$month],["20". $year]));
}
echo getFormattedDate($date);
<<p>在线演示/strong>

一行:

echo DateTime::createFromFormat('d/m/y', '01/'.$date)->format('d-m-Y');

输出:https://3v4l.org/9kb5g

相关内容

  • 没有找到相关文章

最新更新