gpt4 book ai didi

php - 拉维 : Add key and value in single array

转载 作者:可可西里 更新时间:2023-11-01 13:20:32 26 4
gpt4 key购买 nike

我有一个数据数组,我想在同一个数组中添加一个键和它的值。在 addedPost 中,我想添加键 favouritePost 并且它的值是 $favouritePostproduct 键之后。我该怎么做?

这是我的查询:

$addedPost      =   Post::with(['product','postattribute.attribute.category','user.userDetails'])
->whereId($postData['post_id'])
->first();
$favouritePost = PostFavourite::isAlreadyAdded($postData['post_id'], Auth::id());

return [
'status_code' => $status_code,
'message' => $message,
'PostDetails' => $addedPost
];

我得到的回应:

{
"PostDetails": {
"id": 289,
"user_id": 12,
"product_id": 2,
"demand_or_supply": "Demand",
"description": "edited1",
"status": "Expired",
"created_at": "2018-06-22 07:35:27",
"updated_at": "2018-07-05 06:42:56",
"product": {
"id": 2,
"title": "Diamond",
"icon": null,
"status": "Active"
}
}
}

预期结果:

{
"PostDetails": {
"id": 289,
"user_id": 12,
"product_id": 2,
"demand_or_supply": "Demand",
"description": "edited1",
"status": "Expired",
"created_at": "2018-06-22 07:35:27",
"updated_at": "2018-07-05 06:42:56",
"product": {
"id": 2,
"title": "Diamond",
"icon": null,
"status": "Active"
},
"favouritepost": {
"id": 8,
"post_id": 289,
"user_id": 12
}
}
}

最佳答案

首先:您的 $addedPost 不是数组,而是 Eloquent Collection。有多种可能性可以做到这一点。最简单的方法是将数组与集合合并。

$union = $addedPost->union($favouritePost->toArray());

对于所有其他解决方案,请查看 Laravel 文档。这很容易理解。

https://laravel.com/docs/5.6/collections

编辑:虽然我错过了问题中的 ->first() ,但请使用已经提到的解决方案。 ->first() 返回一个 StdClass 对象,所以你可以这样处理它:

$addedPost->favouritepost = $favouritePost;

在这种情况下,该属性 favouritePost 被添加到 $addedPost 对象。无需再次调用任何方法。

关于php - 拉维 : Add key and value in single array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51185647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com