将数字转换为日期和时间

时间:2013-12-05 22:00:09

标签: php date numbers

如何将一些数字,即20020415转为15/04/2002?我所做的一切似乎都在改变20020415到今天的日期。以下是我到目前为止的情况:

//[DOB]
function dob_func( $atts )
{
$dob = get_field('dob');
$dob = date('d/m/Y');
return $dob;
}
add_shortcode( 'dob', 'dob_func' );

代码生成wordpress插件的短代码。 “get_field( 'DOB');”将返回字段20020415,但然后“$ dob = date('d / m / Y');”把它变成今天的日期?我一直在寻找解决方案。

2 个答案:

答案 0 :(得分:0)

为什么不使用substr函数?假设它总是以yyymmdd格式返回数字?

      $year = substr("20020415", 0,4);
      $month = substr("20020415",4,2);
      $day = substr("20020415",6,2);
      $arry = Array()
      $arry[0] = $day;
      $arry[1] = $month;
      $arry[2] = $year
      $formattedDate = implode('/', $arry);
      //Do what you'd like from here

这只是一个想法,将你的vars分开,然后从那里开始。除非我误解你。 http://www.php.net/substr

答案 1 :(得分:0)

PHP的DateTime class及其createFromFormat() method将为您提供比当前接受的答案更简单的解决方案: -

$date = DateTime::createFromFormat('Ymd', '20020415');
$dob = $date->format('d/m/Y');
echo $dob

<强>输出:

15/04/2002