Упражнения PHP: сортировка коллекции данных массивов или объектов по ключу
PHP: упражнение 93 с решением
Напишите программу PHP для сортировки набора данных массивов или объектов по ключу.
Пример решения: -
PHP-код:
<?php
//Licence: https://bit.ly/2CFA5XY
function orderBy($items, $attr, $order)
{
$sortedItems = [];
foreach ($items as $item) {
$key = is_object($item) ? $item->{$attr} : $item[$attr];
$sortedItems[$key] = $item;
}
if ($order ==='desc') {
krsort($sortedItems);
} else {
ksort($sortedItems);
}
return array_values($sortedItems);
}
print_r(orderBy(
[
['id' => 2, 'name' => 'Red'],
['id' => 3, 'name' => 'Black'],
['id' => 1, 'name' => 'Green']
],
'id',
'desc'
));
?>
Пример вывода:
массив ( [0] => Массив ( [id] => 3 [name] => Черный ) [1] => Массив ( [id] => 2 [name] => Красный ) [2] => Массив ( [id] => 1 [name] => Зеленый ) )
Блок - схема:
Редактор кода PHP:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу PHP, чтобы отфильтровать элементы данного массива, которые имеют одно из указанных значений.
Далее: Напишите программу на PHP, чтобы проверить, равны ли два числа друг другу.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code