我的数组包含日期日期$a1[0]
月份$a1[1]
年份$a1[2]
我希望结果为年/日/月给我一个解决方案。
下面是我的代码
<?php
$a1 = array("01","10","2012");
$result = implode("/",$a1);
print $result;
?>
这将打印01/10/2012
,但我想要这个结果2012/01/10
。如何使用 implode 函数手动获取数组?
我怎样才能把年的第一天第二天和月的第三天?
我的数组包含日期日期$a1[0]
月份$a1[1]
年份$a1[2]
我希望结果为年/日/月给我一个解决方案。
下面是我的代码
<?php
$a1 = array("01","10","2012");
$result = implode("/",$a1);
print $result;
?>
这将打印01/10/2012
,但我想要这个结果2012/01/10
。如何使用 implode 函数手动获取数组?
我怎样才能把年的第一天第二天和月的第三天?
你可以array_reverse
这样使用:
$result = implode("/", array_reverse($a1));
这将以相反的顺序创建一个新数组。
你不能单独使用 implode,如果你正好有这个模式(元素顺序是倒置的)使用这个代码(YYYY/MM/DD):
$a1 = array("01", "10", "2012");
$result = implode("/", array_reverse($a1));
print $result;
否则使用正则表达式 (YYYY/MM/DD):
$a1 = array("01", "10", "2012");
$result = preg_replace('/(\d{2})\/(\d{2})\/(\d{4})/', '$3/$2/$1', implode("/", $a1));
print $result;
如果您需要 (YYYY/DD/MM) 的格式,请使用以下格式:
$a1 = array("01", "10", "2012");
$result = preg_replace('/(\d{2})\/(\d{2})\/(\d{4})/', '$3/$1/$2', implode("/", $a1));
print $result;
使用mktime函数。如果你有一个 $timestamp,你可以使用 date 函数来格式化:
$timestamp = mktime(0, 0, 0, $a1[1], $a1[0], $a1[2]);
echo date('y/m/d', $timestamp);
您还可以使用循环(手动内爆):
$a1 = array("01","10","2012");
$a1_length = sizeof($a1);
$date = '';
for ($i = $a1_length; $i > 0; $i--) {
$date .= $a1[$i] . '/';
}
$date = rtrim($date, '/');
echo $date;