Массивы в PHP

Содержание
Введение
Создать массив
is_array(): проверка на тип
Обратиться к элементу массива
Пройтись по всем элементам
Получить длину массива
Обратиться к элементу по его индексу
Словарь
array_push: добавить к массиву
array_search(): найти индекс по значению
unset(): удалить элемент
Вывести содержимое массива
Вывести содержимое вложенного массива
Похожие статьи

Введение

Массив — упорядоченный набор элементов, каждый из которых хранит одно значение, идентифицируемое с помощью одного или нескольких индексов.

В простейшем случае массив имеет постоянную длину и хранит единицы данных одного и того же типа, а в качестве индексов выступают целые числа.

Создать массив

Пример создания массива

<?php $sites = array("heihei.ru", "testsetup.ru", "topbicycle.ru");

Обратиться к элементу массива можно следующим образом

echo $sites[0];

heihei.ru

is_array()

Проверить является ли объект массивом

<?php $sites = array("heihei.ru", "testsetup.ru", "topbicycle.ru"); echo is_array($sites); echo is_array("string");

1

Если объект является массивом вернётся 1, но если не является ни 0 ни скажем -1 не вернётся.

Пройтись по всему массиву

Чтобы вывести на экран все элементы массива можно написать функцию show_array()

<?php $arr = array(1, 2, 3, 4); function show_array($arr) { foreach ($arr as &$value) { echo $value; echo '<br>'; unset($value); } } show_array($arr);

1
2
3
4

Эта функция работает только с простыми массивами у которых нет вложенных массивов.

Получить длину массива

<?php $my_array = array("one", "two", "three"); array_length = count($my_array); echo($array_length);

3

Обратиться к элементу по его индексу

<?php $my_array = array("one", "two", "three"); $indexed_array = array_values($my_array); echo$indexed_array[1];

two

Словари

С помощью array() можно создавать словари

<?php $myArray = array( 0 => 'Big', 1 => 'Small', 2 => 'Up', 3 => 'Down' );

РЕКЛАМА хостинга Beget, которым я пользуюсь более десяти лет

Изображение баннера

Конец рекламы хостинга Beget, который я всем рекомендую.

Обратиться к элементу массива можно следующим образом

echo $myArray[0];

Big

<?php $myArray = array( 'a' => 'Big', 'b' => 'Small', 'c' => 'Up', 'd' => 'Down' );

Обратиться к элементу массива можно следующим образом

echo $myArray['b'];

Small

Добавить элемент к массиву PHP

Допустим у нас есть массив из двух чисел, который можно посмотреть функцией show_array()

<?php $a = array(1, 2); show_array($a);

1
2

Добавить к нему ещё один элемент можно с помощью array_push()

array_push($a, 3) show_array($a);

1
2
3

Найти индекс элемента по значению

Если известно значение array_search() найдёт индекс первого элемента массива с таким значением

<?php $a = array("a", "b", "c"); echo(array_search("c", $a));

2

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

Функция unset() удаляет из массива элемент по его индексу

<?php $a = array("a", "b", "c"); show_array($a); unset($a[1]); show_array($a);

a
b
c
a
c

Функцию show_array() мы написали заранее

Вывести содержимое массива

Если попытаться "распечатать" массив с помощью echo появится PHP Warning а вместо содержимого будет выведена строка "Array"

PHP Warning: Array to string conversion in

Пример

<?php $b = array("a", "b", "c"); echo $b;

Array

[13-Dec-2024 06:44:17 Europe/Moscow] PHP Warning: Array to string conversion in array.php on line 4

Для такого простого массива эта проблема решается с помощью implode()

<?php $b = array("a", "b", "c"); $arraydata = implode(',' , $b); echo $arraydata;

a,b,c

Минус в том, что implode() разбирает только первый уровень вложенности

Если массив содержит вложенный массив

$с = array("a", "b", array("c", "d", "e")); $arraydata = implode(',' , $с); echo $arraydata;

то массив ["c", "d", "e"] будет обработан с тем же предупреждением.

a,b,Array

Вывести содержимое вложенного массива

Альтернативные способ вывода содержимого массива - использование print и json_encode()

Этот вариант работает не только с простыми, но и с вложенными массивами.

<?php $simple_array = array("a", "b", "c"); $nested_array = array("a", "b", array("c", "d", array("e", "f", "g"))); print json_encode($simple_array); print json_encode($nested_array);

["a","b","c"]["a","b",["c","d",["e","f","g"]]]

С помощью print_r() можно вывести содержимое вложенного массива, правда формат вывода достаточно специфический

print_r($nested_array);

Array ( [0] => a [1] => b [2] => Array ( [0] => c [1] => d [2] => Array ( [0] => e [1] => f [2] => g ) ) )

Похожие статьи
Программирование на PHP
Массивы в PHP
Циклы в PHP
Дата и время в PHP - основы
Как отобразить время различных часовых поясов PHP
Как вставить переменную в ссылку PHP
gettype(): определить тип переменной PHP
json_decode
Как получить ширину экрана с помощью PHP
Вызов функции из другого файла
Premature end of chunk coded message body: closing chunk expected
Сгенерировать неповторяющиеся случайные числа PHP
Узнать свой HTTP_USER_AGENT
Сравнить две даты
Классы в PHP 8
Комментарии в PHP
substr: обрезать строку
Запросы к REST API на PHP
$_SERVER['REQUEST_URI']: текущая url
Работа с базами данных
Работа с cookies
PHP sessions
Аутентификация и авторизация в PHP 8
switch, тернарный
try catch
Мои скрипты
PHP_errors.log Beget
Разбор ошибок

РЕКЛАМА хостинга Beget, которым я пользуюсь более десяти лет

Изображение баннера

Конец рекламы хостинга Beget, который я всем рекомендую.

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: