如何将一些数字,即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');”把它变成今天的日期?我一直在寻找解决方案。
答案 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