7. Лекция: Работа с массивами данных » Лекции по PHP » Библиотека » WAP.ZUGDIDI.US
Привет прохожий!
На главную | Вход | Регистрация

7. Лекция: Работа с массивами данных

ункцией ksort() для сортировки по возрастанию (прямой порядок сортировки) или krsort() – для сортировки по убыванию (обратный порядок сортировки). Синтаксис этих функций опять же аналогичен синтаксису функции sort().
<?php
$books = array("Пушкин"=>"Руслан и Людмила", "Толстой"=>"Война и мир", "Лермонтов"=>"Герой нашего времени");
ksort($books); // сортируем массив, сохраняя значения ключей
print_r($books);
?>

Получим:
Array ( [Лермонтов] => Герой нашего времени
[Пушкин] => Руслан и Людмила
[Толстой] => Война и мир )
Сортировка с помощью функции, заданной пользователем

Кроме двух простых способов сортировки значений массива (по убыванию или по возрастанию) PHP предлагает пользователю возможность самому задавать критерии для сортировки данных. Критерий задается с помощью функции, имя которой указывается в качестве аргумента для специальных функций сортировки usort() или uksort(). По названиям этих функций можно догадаться, что usort() сортирует значения элементов массива, а uksort() – значения ключей массива с помощью определенной пользователем функции. Обе функции возвращают true, если сортировка прошла успешно, и false – в противном случае. Их синтаксис выглядит следующим образом:
usort (массив, сортирующая функция);
uksort (массив, сортирующая функция);

Конечно же, нельзя сортировать массив с помощью любой пользовательской функции. Эта функция должна удовлетворять определенным критериям, позволяющим сравнивать элементы массива. Как должна быть устроена сортирующая функция? Во-первых, она должна иметь два аргумента. В них интерпретатор будет передавать пары значений элементов для функции usort() или ключей массива для функции uksort(). Во-вторых, сортирующая функция должна возвращать:
целое число, меньшее нуля, если первый аргумент меньше второго;
число, равное нулю, если два аргумента равны;
число большее нуля, если первый аргумент больше второго.

Как и для других функций сортировки, для функции usort() существует

Страницы:
1 2 .. 6 >>

Перейти к странице:

Комментарии (0)
Скачать Java книгу

» Лекции по PHP
» WEB/WAP мастеру
» В библиотеку

На главную
WAP.ZUGDIDI.US
Соглашение о Предоставлении Услуг

li WAPSTART

Cжатие 65%