我想将对象属性 user 映射为其名称。
我正在尝试这样映射它,但是它没有任何改变。
我获取结果的代码:
$data = $stats
->with('user')
->get()
->map(function ($value, $key) {
$value['user'] = $value['user']['name'];
return $value;
});
当前结果数据:
{
"data": [
{
"total": 4,
"user": {
"id": 3,
"name": "test1"
}
}
]
}
所需结果:
{
"data": [
{
"total": 4,
"user": "test1"
}
]
}
答案 0 :(得分:1)
赞:
$data = $stats
->with('user')
->get()
->map(function ($value, $key) {
return [
'total' => $value['total'],
'user' => $value['user']['name'],
];
});
答案 1 :(得分:1)
尝试此代码
$data = $stats
->with('user')
->get()
->map(function ($value, $key) {
$userName = $value['user']['name'];
unset($value['user']);
$value['user'] = $userName;
return $value;
});