PHP / 4. Массивы

Массивы – это списки: списки людей, списки размеров, списки книг. Массивы предназначены для сохранения группы элементов в переменной. Подобно списку на листке бумаги, элементы в массиве упорядочены. Обычно каждый новый элемент вставляется вслед за последним вхождением в массив, но точно так же, как вы можете вставить новую запись между двумя строчками, с массивом в PHP можно сделать то же самое.

Во многих языках существует только один тип массива: то, что называется массивом с числовой индексацией (или просто массивом). Для нахождения элемента необходимо знать его относительное положение в массиве, известное как индекс. Позиции элементов определяются числами: они начинаются с 0 и увеличиваются на единицу для каждого следующего элемента.
Статьи раздела '4. Массивы':
Добавление одного массива к другому
Задача Необходимо объединить два массива в один. Решение Используйте функцию array_merge(): $garden = array_merge($fruits, $vegetables); Обсуждение Функция array_merge() работает и с заранее определенными массивами и ...
Изменение длины массива
Задача Необходимо модифицировать длину массива, сделав его больше или меньше текущей длины. Решение Для расширения массива применяется функция array_pad(): // начинаем с трех $array = array('apple', 'banana', 'coconut'); ...
Инициализация массива диапазоном
Задача Необходимо занести в массив ряд последовательных целых чисел. Решение Используйте функцию range($start, $stop): $cards = range(1, 52); Обсуждение Для приращения, отличного от 1, можно использовать: function pc_...
Инициализация массива диапазоном целых чисел
Задача Необходимо занести в массив ряд последовательных целых чисел. Решение Используйте функцию range($start, $stop): $cards = range(1, 52); Обсуждение Для приращения, отличного от 1, можно использовать: function pc_...
Нахождение всех перестановок массива
Задача Есть массив элементов, и необходимо вычислить все возможные варианты упорядочения массива. Решение Используйте один из двух алгоритмов перестановки, обсуждаемых далее. Обсуждение Функция pc_permute(), приведенная в...
Нахождение элемента массива с наибольшим или наименьшим значением
Задача Есть массив элементов, и необходимо найти элемент с наибольшим или наименьшим значением. Например, нужно определить соответствующий масштаб при создании гистограммы. Решение Для нахождения наибольшего элемента использу...
Нахождение элементов, удовлетворяющих определенному критерию
Задача Необходимо установить местоположение элементов в массиве, которые удовлетворяют определенным требованиям. Решение Используйте цикл foreach: $movies = array(...); foreach ($movies as $movie) { if ($movie['box_offic...
Обращение массива
Задача Необходимо изменить порядок расположения элементов массива на обратный. Решение Используйте функцию array_reverse(): $array = array('Zero', 'One', 'Two'); $reversed = array_reverse($array); Обсуждение Функция ...
Определение всех комбинаций элементов массива
Задача Необходимо определить совокупность всех комбинаций множеств, содержащих все или некоторые элементы массива, известную также как показательное множество. Решение Используйте функцию pc_array_power_set() Пример 4.5. p...
Определение массива с ненулевым начальным индексом
Задача Необходимо присвоить множество значений элементам массива за один раз, но при этом первый индекс не должен быть равен 0. Решение Прикажите функции array() использовать другой индекс, применив синтаксис =>: $presidents...
Определение объединения, пересечения или разности двух массивов
Задача Есть два массива, и требуется найти их объединение (все элементы, но если элемент входит в оба массива, он учитывается один раз), пересечение (элементы, входящие в оба массива) или разность (элементы одного массива, не при...
Определение позиции элемента в массиве
Задача Необходимо узнать, присутствует ли элемент в массиве, и если да, то в какой позиции он находится. Решение Используйте функцию array_search(). Она возвращает ключ обнаруженного элемента или значение false: $position ...
Перебор элементов массива
Задача Необходимо перебрать по очереди и обработать все или некоторые эле- менты массива. Решение Используйте оператор foreach: foreach ($array as $value) { // Действие с $value } Или для получения ключей и значений ...
Печать массивов с запятыми
Задача Необходимо распечатать массив с запятыми, разделяющими элементы, и со строкой «and» перед последним элементом, если в массиве больше двух элементов. Решение Используйте функцию pc_array_to_comma_string(), показанную в ...
Преобразование массива в строку
Задача Есть массив, который необходимо конвертировать в хорошо отформатированную строку. Решение Используйте функцию join(): // создаем список элементов, разделенных запятыми $string = join(',', $array); Или цикл: $stri...
Проверка наличия ключа в массиве
Задача Необходимо узнать, содержит ли массив определенный ключ. Решение Используйте функцию isset(): if (isset($array['key'])) { /* В массиве $array есть значение для ключа 'key' */ } Обсуждение Можно проверить корректн...
Проверка наличия элемента в массиве
Задача Необходимо узнать, содержит ли массив определенное значение. Решение Используйте функцию in_array(): if (in_array($array, $value)) { // в массиве $array есть элемент со значением $value } Обсуждение Используйте фу...
Программа: Печать массива в виде HTML-таблицы
Преобразование массива в таблицу с горизонтально расположенными столбцами располагает фиксированное количество элементов в строке. Первое множество заполняет начальную строку таблицы, второе множество располагается в следующей ...
Рандомизация массива
Задача Необходимо перетасовать элементы массива в случайном порядке. Решение Если у вас запущена версия PHP 4.3 или выше, то используйте функцию shuffle(): shuffle($array); С более ранними версиями используйте функцию p...
Сортировка массива
Задача Необходимо отсортировать массив определенным образом. Решение Для сортировки массива в общепринятом смысле этого слова используйте функцию sort(): $states = array('Delaware', 'Pennsylvania', 'New Jersey'); sort($st...

Страницы: 1 2