Курс — «Программирование на PHP8 для начинающих» — #12 Работа с массивами. Функции для работы с массивами
Здравствуйте, дорогие друзья.
PHP предоставляет множество встроенных функций для работы с массивами, которые упрощают выполнение различных операций, таких как добавление, удаление, поиск, сортировка и фильтрация элементов. В этом разделе мы рассмотрим основные функции для работы с массивами в PHP.
Создание и управление массивами
- Создание массива:
1 2 3 4 5 |
<?php $array = array(1, 2, 3, 4, 5); // или $array = [1, 2, 3, 4, 5]; ?> |
2. Добавление элементов в массив:
1 2 3 4 5 6 |
<?php $array = [1, 2, 3]; $array[] = 4; // Добавляет элемент в конец массива array_push($array, 5, 6); // Добавляет несколько элементов в конец массива print_r($array); // Вывод: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) ?> |
3. Удаление элементов из массива:
1 2 3 4 5 6 7 |
<?php $array = [1, 2, 3, 4, 5]; unset($array[2]); // Удаляет элемент с индексом 2 array_pop($array); // Удаляет последний элемент массива array_shift($array); // Удаляет первый элемент массива print_r($array); // Вывод: Array ( [0] => 2 [1] => 4 ) ?> |
Поиск и проверка элементов
- Проверка наличия элемента в массиве:
1 2 3 4 5 6 |
<?php $array = [1, 2, 3, 4, 5]; if (in_array(3, $array)) { echo "Элемент 3 найден в массиве."; } ?> |
2. Проверка наличия ключа в массиве:
1 2 3 4 5 6 |
<?php $array = ["name" => "Alice", "age" => 30]; if (array_key_exists("age", $array)) { echo "Ключ 'age' существует в массиве."; } ?> |
3. Поиск ключа по значению:
1 2 3 4 5 |
<?php $array = ["name" => "Alice", "age" => 30]; $key = array_search(30, $array); echo "Ключ для значения 30: " . $key; // Вывод: Ключ для значения 30: age ?> |
Сортировка массивов
- Сортировка по значениям
1 2 3 4 5 6 |
<?php $array = [3, 1, 4, 2, 5]; sort($array); // Сортировка по возрастанию rsort($array); // Сортировка по убыванию print_r($array); // Вывод: Array ( [0] => 5 [1] => 4 [2] => 3 [3] => 2 [4] => 1 ) ?> |
2. Сортировка по ключам:
1 2 3 4 5 6 |
<?php $array = ["b" => 2, "a" => 1, "c" => 3]; ksort($array); // Сортировка по ключам по возрастанию krsort($array); // Сортировка по ключам по убыванию print_r($array); // Вывод: Array ( [c] => 3 [b] => 2 [a] => 1 ) ?> |
3. Сортировка ассоциативного массива по значениям:
1 2 3 4 5 6 |
<?php $array = ["b" => 2, "a" => 1, "c" => 3]; asort($array); // Сортировка по значениям по возрастанию arsort($array); // Сортировка по значениям по убыванию print_r($array); // Вывод: Array ( [c] => 3 [b] => 2 [a] => 1 ) ?> |
Фильтрация и преобразование массивов
- Фильтрация массива:
1 2 3 4 5 6 7 |
<?php $array = [1, 2, 3, 4, 5]; $evenNumbers = array_filter($array, function($number) { return $number % 2 == 0; }); print_r($evenNumbers); // Вывод: Array ( [1] => 2 [3] => 4 ) ?> |
2. Преобразование массива:
1 2 3 4 5 6 7 |
<?php $array = [1, 2, 3, 4, 5]; $squaredNumbers = array_map(function($number) { return $number * $number; }, $array); print_r($squaredNumbers); // Вывод: Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 ) ?> |
3. Объединение массивов:
1 2 3 4 5 6 |
<?php $array1 = [1, 2, 3]; $array2 = [4, 5, 6]; $mergedArray = array_merge($array1, $array2); print_r($mergedArray); // Вывод: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) ?> |
Пример использования функций для работы с массивами:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
<?php // Создание массива $numbers = [3, 1, 4, 2, 5]; // Добавление элементов в массив array_push($numbers, 6, 7); print_r($numbers); // Вывод: Array ( [0] => 3 [1] => 1 [2] => 4 [3] => 2 [4] => 5 [5] => 6 [6] => 7 ) // Удаление элементов из массива array_pop($numbers); // Удаляет последний элемент array_shift($numbers); // Удаляет первый элемент print_r($numbers); // Вывод: Array ( [0] => 1 [1] => 4 [2] => 2 [3] => 5 [4] => 6 ) // Проверка наличия элемента и ключа if (in_array(4, $numbers)) { echo "Элемент 4 найден в массиве.\n"; } $person = ["name" => "Alice", "age" => 30]; if (array_key_exists("age", $person)) { echo "Ключ 'age' существует в массиве.\n"; } // Поиск ключа по значению $key = array_search(30, $person); echo "Ключ для значения 30: " . $key . "\n"; // Вывод: Ключ для значения 30: age // Сортировка массива sort($numbers); // Сортировка по возрастанию print_r($numbers); // Вывод: Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 5 [4] => 6 ) // Фильтрация массива $evenNumbers = array_filter($numbers, function($number) { return $number % 2 == 0; }); print_r($evenNumbers); // Вывод: Array ( [1] => 2 [2] => 4 [4] => 6 ) // Преобразование массива $squaredNumbers = array_map(function($number) { return $number * $number; }, $numbers); print_r($squaredNumbers); // Вывод: Array ( [0] => 1 [1] => 4 [2] => 16 [3] => 25 [4] => 36 ) // Объединение массивов $array1 = [1, 2, 3]; $array2 = [4, 5, 6]; $mergedArray = array_merge($array1, $array2); print_r($mergedArray); // Вывод: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) ?> |
Функции для работы с массивами в PHP предоставляют мощные инструменты для управления, поиска, сортировки и преобразования данных. Эти функции делают работу с массивами более удобной и эффективной, позволяя создавать гибкие и мощные приложения.
На этом все. Всем хорошего дня!
Цикл статей по курсу — «Программирование на PHP8 для начинающих».