У меня есть следующий красноречивый запрос:Группировка элементов массива с красноречивым
$extras = EventExtra::select('id', 'category', 'name', 'price', 'description', 'company')->get();
Он получает некоторые данные от меня из моей базы данных. Что я хочу, чтобы возвращаемые данные будут сгруппированы в два раза, первый по категориям, а затем второй компанией, так что в конце концов у меня есть что-то вроде этого возвращается клиенту:
[
{
"name": "donation",
"collection": [
{
"name": "sampleCompany1",
"array": [
{
"name": "extra1",
"description": "",
"value": ""
},
{
"name": "extra4",
"description": "",
"value": ""
},
{
"name": "extra6",
"description": "",
"value": ""
}
]
}
]
},
{
"name": "donation",
"collection": [
{
"name": "sampleCompany2",
"array": [
{
"name": "extra2",
"description": "",
"value": ""
},
{
"name": "extra3",
"description": "",
"value": ""
}
]
}
]
}]
Я просто набран выше так что это может быть не допустимый массив объектов, но в основном это показывает, что я хочу сделать здесь.
Здравствуйте, спасибо, но я смущен вашим использованием «return_data» первый, затем «inner_data», я могу Также не вижу петли или назначения. – user3718908
Я не даю вам точный код для вашей проблемы. Я дал вам представление об использовании Collection для создания вашего настраиваемого объекта. Это не полный код. – codegeek
Да, я понимаю это, но эта вещь «collection()» для меня нова, я никогда не использовал ее и даже не видел раньше, я проверил документы laravel для документации и образцов, но в этом разделе очень мало информации. Это очень помогло бы мне, если бы я мог видеть рабочий образец из вас, пожалуйста. – user3718908