У меня есть объект-дилер в моей базе данных, и у каждого дилера есть несколько марок автомобилей. У автомобилей есть разные цены на основе их набора функций. Ниже приводятся только две записи объекта дилера. Сначала я хочу сортировать дилеров с самыми низкими ценами. Как я могу это сделать?Сортировка массива объектов на основе вложенного ключа в php
Dealer Object
(
[name] => Kosh Motors
[address] => NYC
[make] => Array
(
[0] => Make Object
(
[makeName] => Mercedes
[Prices] => Array
(
[0] =>Price Object
(
[makeDescription] => Some description here
[price] => 12400
)
[1] =>Price Object
(
[sDescription] => Variant with more features
[price] => 16600
)
)
)
)
)
Dealer Object
(
[name] => Majesty Motors
[address] => London, United Kingdom
[make] => Array
(
[0] => Make Object
(
[makeName] => BMW
[Prices] => Array
(
[0] =>Price Object
(
[makeDescription] => Some description here
[price] => 6400
)
[1] =>Price Object
(
[sDescription] => Variant with more features
[price] => 8700
)
)
)
)
)
Я попробовал usort, но его не работает учет с моим требованием. На самом деле это гнездо слишком сложно для меня. Я хочу, чтобы Majesty Motors Dealer появился первым после сортировки, потому что он имеет более низкие цены, чем Kosh Motors. Благодарим вас за помощь.
Вы все равно можете использовать usort, но ваша функция сортировки должна сортироваться по «более низким ценам». Как * точно * вы хотите определить, что у Величества есть более низкие цены, которые Кош? (В этом примере величие явно ниже, но как насчет в общем смысле?) – jbafford
Я хочу, если есть два таких же дилера, которые один из них предлагает самую низкую цену, независимо от марки. Только дилер, содержащий самые низкие цены, должен выглядеть первым –
Хорошо, но что именно определяет «самые низкие цены»? Например, что, если у одного дилера есть [500, 1000], а у другого дилера - [100, 1200]? – jbafford