PHP array: массивы, индексы, добавление и foreach

Короткий ответ: array в PHP — это массив, структура для хранения нескольких значений в одной переменной. В массиве можно держать список строк, чисел, товаров, пользователей, настроек или результатов из базы данных. Значения можно получать по индексу, добавлять, удалять и обходить через foreach

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

Простой массив

<?php

$names = ['Анна', 'Иван', 'Мария'];

echo $names[0];

Индексы начинаются с нуля. Поэтому $names[0] — первый элемент, $names[1] — второй

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

<?php

$names = ['Анна', 'Иван'];

$names[] = 'Мария';

print_r($names);

Пустые квадратные скобки добавляют новое значение в конец массива

Количество элементов

<?php

$numbers = [10, 20, 30];

echo count($numbers);

count() возвращает количество элементов. Это удобно для проверки пустого списка и вывода статистики

Обход массива через foreach

<?php

$products = ['Книга', 'Курс', 'Консультация'];

foreach ($products as $product) {
    echo $product . '<br>';
}

foreach проходит по каждому элементу массива. Это самый частый способ вывести список на странице

Индекс и значение

<?php

$products = ['Книга', 'Курс', 'Консультация'];

foreach ($products as $index => $product) {
    echo $index . ': ' . $product . '<br>';
}

Так вы получаете и индекс, и значение. Это полезно для нумерации, отладки и задач, где важна позиция элемента

Проверка значения

<?php

$roles = ['admin', 'editor', 'user'];

if (in_array('admin', $roles, true)) {
    echo 'Администратор найден';
}

Третий аргумент true включает строгую проверку. Это помогает избежать странных совпадений между строками и числами

Удаление элемента

<?php

$names = ['Анна', 'Иван', 'Мария'];

unset($names[1]);

print_r($names);

После unset() индекс может “пропасть”. Если нужно заново пронумеровать массив, используйте array_values()

$names = array_values($names);

Массив и HTML

Если значения выводятся в HTML, используйте htmlspecialchars()

<?php

$comments = ['Привет', '<script>alert(1)</script>'];

foreach ($comments as $comment) {
    echo htmlspecialchars($comment, ENT_QUOTES, 'UTF-8') . '<br>';
}

Массив не делает данные безопасными сам по себе. Безопасность появляется на этапе проверки и вывода

Мини-практика

Создайте массив задач

<?php

$tasks = ['Установить PHP', 'Запустить файл', 'Проверить ошибку'];

Выведите каждую задачу с номером. Затем добавьте четвертую задачу через $tasks[], посчитайте количество элементов через count() и проверьте, есть ли задача Запустить файл

Частые ошибки

Путают первый элемент и индекс 1. В PHP первый индекс обычного массива — 0

Обращаются к несуществующему индексу. PHP выдаст предупреждение, если такого элемента нет

Используют for, когда проще foreach. Для большинства списков foreach читабельнее

Забывают строгий режим в in_array(). Без него возможны неожиданные совпадения

Удаляют элемент через unset(), а потом ждут, что индексы автоматически перестроятся

Выводят данные из массива без экранирования в HTML

Что почитать дальше по PHP

Если нужен общий маршрут по теме, откройте рубрику PHP. Для соседних задач пригодятся эти разборы:

Оцените статью
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x