【发布时间】:2019-09-16 16:08:28
【问题描述】:
数据库表如下所示:
数据库中的“附加”列存储了一个对象数组,如下所示:
[
{"id":92,"product_id":8966,"extra_type":"Extras","extra_name":"Olives"},
{"id":93,"product_id":8966,"extra_type":"Extras","extra_name":"Ketchup"},
{"id":92,"product_id":8966,"extra_type":"Extras","extra_name":"Olives"}
]
下面的代码(来自 Laravel 刀片)返回对象数组。
@foreach($item->orderedProducts as $op)
<tr>
<td>
<span>{{ $op['extras'] }}</span><br>
</td>
</tr>
@endforeach
$op 返回这个:
{
"id": 171,
"product_id": 8966,
"order_id": 175,
"price": 11,
"count": 1,
"product_data": "{\"id\":8966,\"name\":\"Camera Br\\u00fbl\\u00e9e\",\"description\":\"Lorem ipsum dolor sit amet consectetur adipiscing elit etiam, conubia tempus sed dapibus augue gravida accumsan. Odio congue in blandit iaculis risus gravida parturient dictum quis rhoncus volutpat ornare tincidunt, dignissim ut pellentesque.\",\"price\":11,\"price_old\":null,\"category_id\":4584,\"created_at\":\"2019-03-17 14:59:56\",\"updated_at\":\"2019-04-17 16:37:03\",\"tax_group_id\":null,\"sort\":1,\"vendor_id\":null,\"option1\":null,\"option2\":null,\"option3\":null,\"option4\":null,\"option5\":null,\"option6\":null,\"images\":[\"http:\\/\\/localhost:8000\\/product_images\\/ElI9GImttc.jpg\"],\"formatted_price\":\"\\u00a311\",\"formatted_old_price\":\"0\",\"tax_value\":0,\"city_id\":null,\"restaurant_id\":null,\"product_images\":[{\"id\":9000,\"image\":\"\\/product_images\\/ElI9GImttc.jpg\",\"product_id\":8966,\"created_at\":\"2019-04-08 15:16:53\",\"updated_at\":\"2019-04-08 15:16:53\"}],\"tax_group\":null,\"category\":{\"id\":4584,\"name\":\"Random Things\",\"_lft\":1,\"_rgt\":2,\"parent_id\":null,\"created_at\":\"2018-11-09 13:15:01\",\"updated_at\":\"2019-04-17 16:47:21\",\"restaurant_id\":null,\"city_id\":null,\"category_image\":null,\"has_children\":0,\"image_url\":\"http:\\/\\/localhost:8000\\/category_images\\/a64be5a696402b0fe3649536ab6a49e4_1555519641.jpg\"},\"added\":true}",
"extras": "[{\"id\":93,\"product_id\":8966,\"extra_type\":\"Extras\",\"extra_name\":\"Ketchup\",\"extra_price\":\"1.20\",\"extra_added\":true,\"price_sum\":1.2,\"extra_count\":1}]",
"exclusions": "[{\"id\":117,\"product_id\":8966,\"extra_type\":\"Exclusions\",\"extra_name\":\"Rat poison\",\"extra_price\":null,\"exclusion_added\":true}]",
"created_at": "2019-04-27 10:35:11",
"updated_at": "2019-04-27 10:35:11",
"product": {
"id": 8966,
"name": "Camera Brûlée",
"description": "Lorem ipsum dolor sit amet consectetur adipiscing elit etiam, conubia tempus sed dapibus augue gravida accumsan. Odio congue in blandit iaculis risus gravida parturient dictum quis rhoncus volutpat ornare tincidunt, dignissim ut pellentesque.",
"price": 11,
"price_old": null,
"category_id": 4584,
"created_at": "2019-03-17 14:59:56",
"updated_at": "2019-04-17 16:37:03",
"tax_group_id": null,
"sort": 1,
"vendor_id": null,
"option1": null,
"option2": null,
"option3": null,
"option4": null,
"option5": null,
"option6": null,
"images": [
"http://localhost:8000/product_images/ElI9GImttc.jpg"
],
"formatted_price": "£11",
"formatted_old_price": "0",
"tax_value": 0,
"city_id": null,
"restaurant_id": null,
"product_images": [
{
"id": 9000,
"image": "/product_images/ElI9GImttc.jpg",
"product_id": 8966,
"created_at": "2019-04-08 15:16:53",
"updated_at": "2019-04-08 15:16:53"
}
],
"tax_group": null,
"category": {
"id": 4584,
"name": "Random Things",
"_lft": 1,
"_rgt": 2,
"parent_id": null,
"created_at": "2018-11-09 13:15:01",
"updated_at": "2019-04-17 16:47:21",
"restaurant_id": null,
"city_id": null,
"category_image": null,
"has_children": 0,
"image_url": "http://localhost:8000/category_images/a64be5a696402b0fe3649536ab6a49e4_1555519641.jpg"
}
}
}
我想要实现的是从“extras:”中获取(例如)“extra_name”的所有值。
所需的输出应该是这样的:
橄榄 番茄酱 橄榄
【问题讨论】:
-
你能试试
{{ $op->extras }}吗? -
我猜你需要
{{ $op->extra_type }}。
标签: php html laravel laravel-5 eloquent