在php中修改json数组的日期格式
我的问题是我有一个数组如何包含dateTime格式的值,但我想用格式Y-m-d修改这个值。我在这里尝试了很多问题,但在编码json时没有任何效果 现在我知道了:在php中修改json数组的日期格式,php,json,Php,Json,我的问题是我有一个数组如何包含dateTime格式的值,但我想用格式Y-m-d修改这个值。我在这里尝试了很多问题,但在编码json时没有任何效果 现在我知道了: [contacts] => Array ( [0] => Array ( [createdAt] =>2020-01-29T17:00:04.159+01:00 ) ) 我想 [contacts]
[contacts] => Array (
[0] => Array (
[createdAt] =>2020-01-29T17:00:04.159+01:00
)
)
我想
[contacts] => Array (
[0] => Array (
[createdAt] =>2020-01-29
)
)
我的php代码是:
$contacts=$result[contacts];
foreach ($contacts as $contact) {
$time = new DateTime($contact['createdAt']);
$date = $time->format('Y-m-d');
echo '<br>' .$date; //that show the date format I want
}
//that don't show correct format
$json=json_encode($contacts);
print_r($json);
$contacts=$result[contacts];
foreach($contacts作为$contact){
$time=新日期时间($contact['createdAt']);
$date=$time->format('Y-m-d');
echo“
”.$date;//显示我想要的日期格式
}
//显示的格式不正确
$json=json_encode($contacts);
打印(json);
有人能帮我吗?你可以用
&
修改你的$contact
数组:
foreach ($contacts as &$contact) {
$time = new DateTime($contact['createdAt']);
$contact['createdAt'] = $time->format('Y-m-d');
}
只需在代码中做以下更改,就可以在联系人数组中重新分配值
foreach ($contacts as $key => $contact) {
$time = new DateTime($contact['createdAt']);
$date = $time->format('Y-m-d');
echo '<br>' .$date; //that show the date format I want
$contacts[$key]['createdAt'] = $date;
}
foreach($contacts as$key=>$contact){
$time=新日期时间($contact['createdAt']);
$date=$time->format('Y-m-d');
echo“
”.$date;//显示我想要的日期格式
$contacts[$key]['createdAt']=$date;
}
它将在您现有的元素中重新分配新的日期值您能提供您的代码吗?是的,很抱歉,我忘记使用我的php代码了!非常感谢,我不知道我们能做到