
Если необходимо вывести элементы массива в разметке, чаще всего используется цикл foreach. Он позволяет пройтись по массиву и вывести каждое значение с форматированием. Например:
$fruits = ["яблоко", "банан", "груша"];
foreach ($fruits as $fruit) {
echo "<p>$fruit</p>";
}
Для ассоциативных массивов цикл foreach позволяет получить и ключ, и значение:
$user = ["имя" => "Иван", "возраст" => 30];
foreach ($user as $key => $value) {
echo "<p>$key: $value</p>";
}
$data = [
["id" => 1, "название" => "Товар A"],
["id" => 2, "название" => "Товар B"]
];
foreach ($data as $item) {
foreach ($item as $key => $value) {
echo "<p>$key: $value</p>";
}
}
$tags = ["php", "html", "css"];
echo implode(", ", $tags);
foreach ($_GET as $key => $value) {
echo "<p>" . htmlspecialchars($key) . ": " . htmlspecialchars($value) . "</p>";
}
Как вывести элементы одномерного массива с помощью цикла foreach

Пример массива:
$fruits = ["яблоко", "банан", "груша", "слива"];
foreach ($fruits as $fruit) {
echo $fruit . "<br>";
}
$fruit– переменная, в которую поочерёдно подставляются значения из массива.- Использование
. "<br>"позволяет отобразить каждый элемент с новой строки.
Если нужно вывести и ключи:
foreach ($fruits as $index => $fruit) {
echo $index . ": " . $fruit . "<br>";
}
$index– ключ текущего элемента, в данном случае это числовой индекс.- Такой формат подходит для нумерованных списков и отладки.
Дополнительный пример с массивом чисел:
$numbers = [10, 20, 30, 40];
foreach ($numbers as $number) {
echo "Число: " . $number . "<br>";
}
echo "<ul>";
foreach ($fruits as $fruit) {
echo "<li>" . $fruit . "</li>";
}
echo "</ul>";
Для перебора ассоциативного массива в PHP используется конструкция foreach. Она позволяет получить доступ одновременно и к ключу, и к значению элемента.
Пример:
$users = [
"id_1" => "Алексей",
"id_2" => "Мария",
"id_3" => "Иван"
];
foreach ($users as $key => $value) {
echo "Ключ: $key, Значение: $value<br>";
}
Ключ передается в переменную $key, значение – в $value. Если указать только одну переменную, будет возвращаться только значение:
foreach ($users as $value) {
echo "$value<br>";
}
Для получения массива всех ключей используется функция array_keys():
Для объединения элементов массива в строку используется функция implode(). Она принимает два аргумента: разделитель и массив. Пример:
$array = ['яблоко', 'груша', 'банан'];
echo implode(', ', $array); // яблоко, груша, банан
Если элементы массива числовые, форматирование возможно с помощью array_map(). Например, для добавления префикса к числам:
$numbers = [1, 2, 3];
$formatted = array_map(fn($n) => "№$n", $numbers);
echo implode(' | ', $formatted); // №1 | №2 | №3
$words = ['кот', 'пёс'];
$quoted = array_map(fn($w) => ""$w"", $words);
echo implode(', ', $quoted); // "кот", "пёс"
Для удаления пустых значений перед объединением применяется array_filter():
$items = ['a', '', 'b'];
$filtered = array_filter($items);
echo implode(', ', $filtered); // a, b
Если массив ассоциативный, можно вывести пары ключ => значение:
$data = ['id' => 10, 'name' => 'Анна'];
$result = array_map(fn($k, $v) => "$k=$v", array_keys($data), $data);
echo implode('; ', $result); // id=10; name=Анна
Использование функции print_r для отладки массивов

Функция не показывает типы значений, поэтому для точной диагностики лучше сочетать её с var_dump(), если необходимо знать, где находится NULL, boolean или другие типы данных.
Как вывести элементы многомерного массива

Пример двумерного массива:
$data = [
["Яблоко", "Банан", "Апельсин"],
["Морковь", "Свекла", "Капуста"]
];
foreach ($data as $row) {
foreach ($row as $item) {
echo $item . "<br>";
}
}
Для ассоциативных многомерных массивов структура аналогична:
$users = [
"user1" => ["name" => "Алексей", "age" => 30],
"user2" => ["name" => "Ирина", "age" => 25]
];
foreach ($users as $user => $info) {
echo "ID: " . $user . "<br>";
foreach ($info as $key => $value) {
echo $key . ": " . $value . "<br>";
}
}
Если массив имеет произвольную вложенность, используйте рекурсивную функцию:
function printArray($array) {
foreach ($array as $key => $value) {
if (is_array($value)) {
printArray($value);
} else {
echo $key . ": " . $value . "<br>";
}
}
}
Вызов: printArray($users);
