A PHP Error was encountered

Severity: 8192

Message: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

Filename: mysql/mysql_driver.php

Line Number: 303

Сортировка массивов по возрастанию и убыванию в PHP

Сортировка массивов по возрастанию и убыванию в PHP

Автор: Mowshon.
Опубликовано 1 апреля 2012

Просмотров: 15313.
Подписаться на комментарии по RSS.

Сортировка массивов по возрастанию и убыванию в PHP

Рано или поздно необходимость сортировать данные из массива возникает у любого программиста. Будь то вывод данных из базы в алфавитном порядке или сортировка имен файлов по дате последнего изменения, можно осуществить благодаря встроенным php функциям для сортировки данных массива. В данной статье продемонстрирую и объясню в примерах как работают такие функции как: sort(), rsort().

Функция sort(); - Сортировка массива по возрастанию и по алфавиту

Структура:

sort( $Массив, $Флаг );

Функция сортирует заданный ей массив $Массив по возрастанию. Функция предназначена для работы со списками. Списки это обычные массивы, ключи которых начинаются с нуля. Функции можно задать необязательный аргумент $Флаг, который манипулирует тем как именно должно происходить сортировка. Рассмотрим описание аргумента $Флаг:

SORT_REGULAR – Сортировка по умолчанию работы функции

SORT_NUMERIC - Сортировка чисел, по возрастанию

SORT_STRING - Сортировка строк, по алфавиту

Рассмотрим пример, у нас есть массив где хранятся в хаотичном виде данные о количестве пар студента в разные года учебы.

<?php
$Leasons = array(83, 100, 72);
sort($Leasons);
foreach($Leasons as $num) {
	$palce++;
	echo "Курс: {$palce} - {$num} пар<br />";
}
?>
Результат работы скрипта:
Курс: 1 - 72 пар
Курс: 2 - 83 пар
Курс: 3 - 100 пар
Если бы мы не применили функцию sort(); результат работы был бы следующим:
Курс: 1 - 83 пар
Курс: 2 - 100 пар
Курс: 3 - 72 пар

Сортировка по алфавиту

Ниже приведен скрипт который сортирует страны их массива по алфавиту, второй аргумент функции ($Флаг) не обязательно ставить, т.к. функция сама поймет, что предстоит работать со строками.

<?php
$Country = array("Россия", "Италия", "Япония", "Армения");
sort($Country);
foreach($Country as $name) {
	echo "{$name}<br />";
}
?>
Результат работы:
Армения
Италия
Россия
Япония

Функция rsort() - Сортировка массива по убыванию

функция rsort(); является алогичной функции sort(); только сортирует массивы по убыванию. рассмотрим структуру синтаксиса:

rsort( $Массив, $Флаг );

Пример для данной функции будет похож на примеры выше приведенные, кроме одного, данные из массива будут отсортированы по убыванию. Создаем массив с призами для тех кто займет 1-е, 2-е и 3-е место в конкурсе.

<?php
$Money = array(500, 1200, 2800);
rsort($Money);
foreach($Money as $num) {
	$place++;
	echo "{$place} место - приз: {$num} руб. <br />";
}
?>
Результат выполнения скрипта:
1 место - приз: 2800 руб.
2 место - приз: 1200 руб.
3 место - приз: 500 руб.

Комментариев: 1

  1. Олег | 23.11.2012 в 10:39:14 | #1

    А тут описанно как можно отсортировать данные извлеченные из базы данных astranar.ru/php?id=2

Оставьте комментарий!

Гость
Комментатор / хотите им стать

Чтобы стать комментатором введите email и пароль. Напишите комментарий. В дальшейшем ваша связка email-пароль, позволит вам комментировать и редактировать свои данные. Не забудьте про активацию (инструкция придет на ящик, указанный при регистрации).

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

(обязательно)