Php удаление всех элементов массива

Содержание
  1. Работа с массивами PHP – создание, наполнение, удаление
  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. Как удалить массив в PHP?

Работа с массивами PHP – создание, наполнение, удаление

Основные примеры работы с массивами PHP. Создание, наполнение, извлечение удаление значений.

Создание массивов

Создать массив и заполнить его значениями

$array = array( 'яблоко', 'апельсин', 'виноград' ); // или $array = array(); $array[] = 'яблоко'; $array[] = 'апельсин'; $array[] = 'виноград';

Можно применить функцию array_fill($start, $size, $value) , которая создаст массив с количеством $size элементов со значением $value , начиная с индекса $start .

Данный пример создает массив с тремя элементам «текст», ключи которых будут начинаться с нуля.

$array = array_fill(0, 3, 'текст'); print_r($array);

Результат:

Array ( [0] => текст [1] => текст [2] => текст )

Еще вариант – функция explode($delimiter, $string) , которая из строки $string создаст массив используя разделитель $delimiter , в данном примере запятая.

$array = explode(',', 'текст 1,текст 2,текст 3'); print_r($array);

Результат:

Array ( [0] => текст 1 [1] => текст 2 [2] => текст 3 )

Узнать количество элементов в массиве

echo count($array); // или echo sizeof($array);

Если массив ассоциативный (многомерный), то count() вернёт количество элементов только первого уровня. Чтобы получит количество всех элементов нужно использовать константу COUNT_RECURSIVE .

$array = array( array( 'яблоко', 'апельсин', 'виноград' ), array( 'яблоко', 'апельсин', 'виноград' ) ); echo count($array); // вернет 2 echo count($array, COUNT_RECURSIVE); // вернет 8

Добавление элементов в массив

Добавить значение в начало массива

array_unshift($array, $value) – добавляет одно или несколько элементов в начало массива.

$array = array( 'яблоко', 'апельсин', 'виноград' ); array_unshift($array, 'банан'); print_r($array);

Результат:

Array ( [0] => банан [1] => яблоко [2] => апельсин [3] => виноград )

Добавить значение в конец массива

array_push($array, $value) – добавляет значение в конец массива.

$array = array( 'яблоко', 'апельсин', 'виноград' ); array_push($array, 'банан'); // или $array[] = 'банан'; print_r($array);

Результат:

Array ( [0] => яблоко [1] => апельсин [2] => виноград [3] => банан [4] => банан )

Работа с ключами массива

Поучить первый ключ массива

Функция array_key_first($array) — получает первый ключ массива. Появилась в версии PHP 7.3, для более ранних версий:

if (!function_exists('array_key_first')) < function array_key_first(array $arr) < foreach($arr as $key =>$unused) < return $key; >return null; > >
$array = array( 1 => 'яблоко', 3 => 'апельсин', 5 => 'виноград' ); echo array_key_first($array); // 1

Поучить последний ключ массива

Функция array_key_last($array) — получает последний ключ массива. Появилась в версии PHP 7.3, для более ранних версий:

if (!function_exists('array_key_last')) < function array_key_last($array) < if (!is_array($array) || empty($array)) < return NULL; >return array_keys($array)[count($array) - 1]; > >
$array = array( 1 => 'яблоко', 3 => 'апельсин', 5 => 'виноград' ); echo array_key_last($array); // 5

Переопределить ключи массива

К примеру, после удаления элемента массива сбивается нумерация ключей и нужно назначить новую нумерацию:

$array = array( 1 => 'яблоко', 3 => 'апельсин', 5 => 'виноград' ); $new = array_values($array); print_r($new);

Результат:

Array ( [0] => яблоко [1] => апельсин [2] => апельсин )

Начало нумерации ключей с единицы:

$array = array( 1 => 'яблоко', 3 => 'апельсин', 5 => 'виноград' ); $new = array_combine(range(1, count($array)), $array); print_r($new);

Результат:

Array ( [1] => яблоко [2] => апельсин [3] => апельсин )

Получение элементов из массива

Получить первый элемент массива

$array = array( 'яблоко', 'апельсин', 'виноград' ); reset($array); $first = current($array); // яблоко

Получить последний элемент массива

$array = array( 'яблоко', 'апельсин', 'виноград' ); $end = end($array); // виноград

Получить часть (срез) массива

array_slice($array, $offset, $length) возвращает часть массива начиная с индекса $offset длиной $length .

  • Если $offset отрицательный, то отчет начинается с конца массива.
  • $length можно не указывать, тогда функция вернет все элементы до конца массива начиная с индекса $offset .
$array = array( 'яблоко', 'апельсин', 'виноград' ); $new = array_slice($array, 0, 2); print_r($new);

Результат:

Array ( [0] => яблоко [1] => апельсин )

Извлечь первый элемент массива

array_shift($array) – извлекает первый элемент из массива $array и возвращает его значение.

$array = array( 'яблоко', 'апельсин', 'виноград' ); $first = array_shift($array); // яблоко print_r($array);

Результат:

Array ( [0] => апельсин [1] => виноград )

Извлечь последний элемент массива

array_pop($array) – извлекает последний элемент из массива $array и возвращает его значение.

$array = array( 'яблоко', 'апельсин', 'виноград' ); $end = array_pop($array); // виноград print_r($array);

Результат:

Array ( [0] => яблоко [1] => апельсин )

Извлечь часть массива

Чтобы извлечь из массива часть можно применить функции array_slice() и array_diff() .

$array = array( 'яблоко', 'апельсин', 'виноград' ); $new = array_slice($array, 0, 2); $array = array_diff($array, $new); print_r($new); print_r($array);

Результат:

Array ( [0] => яблоко [1] => апельсин ) Array ( [2] => виноград )

Выбрать все значения из массива

array_values($array) – создает новый массив из исходного $array игнорируя его ключи.

$array = array( 'key 1' => 'яблоко', 'key 2' => 'апельсин', 'key 3' => 'виноград' ); $new = array_values($array); print_r($new);

Результат:

Array ( [0] => яблоко [1] => апельсин [2] => виноград )

Выбрать все ключи массива

array_keys($array) – создает новый массив состоящий из ключей исходного массива.

$array = array( 'key 1' => 'яблоко', 'key 2' => 'апельсин', 'key 3' => 'виноград' ); $new = array_keys($array); print_r($new);

Результат:

Array ( [0] => key 1 [1] => key 2 [2] => key 3 )

Выбирать случайные значения из массива

array_rand($array, $count) возвращает случайным образом один или несколько ключей из массива $array . Если $count больше единицы, то результат будет в виде массива.

$array = array( 3 => 'яблоко', 1 => 'апельсин', 5 => 'виноград' ); echo $array[array_rand($array)];

Поиск и проверка элементов в массиве

Проверить, есть ли значение в массиве

$array = array( 'яблоко', 'апельсин', 'виноград' ); if (in_array('апельсин', $array)) < echo 'Найдено значение "апельсин"'; >// или if (array_search('апельсин', $array) !== false)

Проверить, есть ли ключ в массиве

$array = array( 1 => 'яблоко', 2 => 'апельсин', 3 => 'виноград' ); if (array_key_exists(2, $array)) < echo 'Найден ключ 2'; >// или if (isset($array[2]))

Удаление элементов из массива

unset() – удаляет переменные и элементы массива по ключу.

В первом примере элемент удаляется по ключу, во втором по значению:

$array = array( 'яблоко', 'апельсин', 'виноград' ); // Удаление по ключу unset($array[1]); // Удаление по значению unset($array[array_search('апельсин', $array)]); print_r($array);

Результат:

Array ( [0] => яблоко [2] => виноград )

Удаление пустых значений

В PHP нет отдельной функции для удаления пустых значений в массиве, поэтому применяют array_diff() которая возвращает расхождения массивов.

$array = array( 'яблоко', '', 'виноград' ); $array = array_diff($array, array('')); print_r($array);

Результат:

Array ( [0] => яблоко [2] => виноград )

Если требуется удалить значения включая 0 , null , array() и т.д. можно применить следующее:

$array = array_diff($array, array('', ' ', null, 0, array()));

Удалить повторяющиеся значения массива

$array = array( 'яблоко', 'яблоко', 'апельсин', 'виноград' ); $array = array_unique($array); print_r($array);

Результат:

Array ( [0] => яблоко [2] => апельсин [3] => виноград )

Объединение массивов

Объединить два и более массивов поможет функция array_merge($array_1, $array_2, . ) .

$array_1 = array( 'яблоко', 'апельсин', 'виноград' ); $array_2 = array( 'помидор', 'огурец', ); $new = array_merge($array_1, $array_2); print_r($new);

Результат:

Array ( [0] => яблоко [1] => апельсин [2] => виноград [3] => помидор [4] => огурец )

Разделить массив на части

array_chunk($array, $size) – создает новый многомерный массив из исходного, деля его на равные части.

В данном примере указано $size = 3 , поэтому получается четыре подмассива в каждом из которых по три элемента.

$array = array( 'январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'ноябрь', 'декабрь', ); $array = array_chunk($array, 3); print_r($array);

Результат:

Array ( [0] => Array ( [0] => январь [1] => февраль [2] => март ) [1] => Array ( [0] => апрель [1] => май [2] => июнь ) [2] => Array ( [0] => июль [1] => август [2] => сентябрь ) [3] => Array ( [0] => ноябрь [1] => декабрь ) )

Если требуется разделить массив на определенное количество частей поможет следующий прием:

$array = array( 'январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'ноябрь', 'декабрь', ); $array = array_chunk($array, ceil(count($array) / 3)); print_r($array);

Результат:

Array ( [0] => Array ( [0] => январь [1] => февраль [2] => март [3] => апрель ) [1] => Array ( [0] => май [1] => июнь [2] => июль [3] => август ) [2] => Array ( [0] => сентябрь [1] => ноябрь [2] => декабрь ) )

Источник

Как удалить массив в PHP?

В этом уроке вы не только узнаете, как удалить массив PHP, но и как удалить один или несколько элементов массива разными способами. Начнем с простого:

unset($array, $array); unset($array['foo'], $array['bar']);
array_splice($array, $offset, $length);
  • Для того, чтобы удалить массив полностью, необходимо воспользоваться той же функцией UnSet(), аргументом которой будет сам удаляемый массив. Вот пример удаления массива:
PHP UnSet array
"; $array[0] = 0; $array[1] = 1; $array[2] = 2; $array[3] = 3; $arrayCount = count($array); echo "array count = "; echo $arrayCount; echo "
"; for($inn = 0; $inn < $arrayCount; $inn++) < echo "array["; echo $inn; echo "] = "; echo "$array[$inn]
"; > echo "
"; UnSet($array); $arrayCount = count($array); echo "array count after UnSet brush: php; title: ; notranslate" title="">$array = $array['foo'] = '';

Есть логическое отличие между использованием функции unset() и присваиванием элементу пустой строки (»). В первом случае говорится: «Этого элемента больше не существует», а во втором – «Этот элемент еще существует, но его значение равно пустой строке».

После применения функции unset() к какому-либо элементу массива, PHP корректирует его так, чтобы цикл продолжал правильно работать. Он не сжимает массив для заполнения пустого пространства, поэтому, можно утверждать, что все массивы являются ассоциативными, даже если кажутся числовыми. Например:

// создаем "нумерованный" массив $animals = array('ant', 'bee', 'cat', 'dog', 'elk', 'fox'); print $animals; // печатает 'bee' print $animals; // печатает 'cat' count($animals); // возвращает 6 // unset() unset($animals); // удаляет элемент $animals = 'bee' print $animals; // печатает '' и выдает ошибку E_NOTICE print $animals; // все еще печатает 'cat' count($animals); // возвращает 5, даже если $array равно 'fox' // add new element $animals[] = 'gnu'; // добавляем новый элемент (не в Unix) print $animals; // печатает '', все еще пустая print $animals; // печатает 'gnu', где 'gnu' заканчивается count($animals); // возвращает 6 // присваиваем '' $animals = ''; // нулевое выходное значение print $animals; // печатает '' count($animals); // возвращаем 6, счетчик не уменьшается

Используем функцию array_values(), для того, чтобы сжать массив до плотно заполненного числового массива:

$animals = array_values($animals);

Функция array_splice() автоматически реиндексирует массив, чтобы не оставлять «дыр»:

// создаем "числовой" массив $animals = array('ant', 'bee', 'cat', 'dog', 'elk', 'fox'); array_splice($animals, 2, 2); print_r($animals); Array ( [0] => ant => bee => elk => fox )

Это полезно, если работать с массивом как с очередью, разрешая произвольный доступ. Для безопасного удаления первого или последнего элемента массива применяются функции array_shift() и array_pop()

Источник

Читайте также:  Select sql statement in java
Оцените статью