В статье приведены примеры вывода содержимого php массивов на экран.

Функция print_r()

Функция print_r() — выводит удобочитаемую информацию о переменной, принимает один аргумент, ту самую переменную, содержимое которой вы хотите проверить. При этом, чтобы отобразить все пробелы и переносы строк, нужно обернуть вывод print_r() в теги <pre>...</pre>.


$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

echo '<pre>';
print_r($array);
echo '</pre>';

Результат:

Array
(
    [0] => Январь
    [1] => Февраль
    [2] => Март
    [3] => Апрель
    [4] => Май
    [5] => Июнь
    [6] => Июль
    [7] => Август
    [8] => Сентябрь
    [9] => Октябрь
    [10] => Ноябрь
    [11] => Декабрь
)

Функция var_dump()


Делает то же самое что и print_r(), но дополнительно отображает информацию о типе и значении.


$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

echo '<pre>';
var_dump($array);
echo '</pre>';

Результат:

array(12) {
  [0]=>
  string(12) "Январь"
  [1]=>
  string(14) "Февраль"
  [2]=>
  string(8) "Март"
  [3]=>
  string(12) "Апрель"
  [4]=>
  string(6) "Май"
  [5]=>
  string(8) "Июнь"
  [6]=>
  string(8) "Июль"
  [7]=>
  string(12) "Август"
  [8]=>
  string(16) "Сентябрь"
  [9]=>
  string(14) "Октябрь"
  [10]=>
  string(12) "Ноябрь"
  [11]=>
  string(14) "Декабрь"
}

Функция на основе print_r() и var_dump()

В своей работе я часто пользуюсь такой функцией, для удобства вывода информации о переменных:


/**
 * обёртка для print_r() и var_dump()
 * @param $val - значение
 * @param string $name - заголовок
 * @param bool $mode - использовать var_dump() или print_r()
 * @param bool $die - использовать die() после вывода
 */
function print_p($val, $name = 'Содержимое переменной', $mode = false, $die = false)
{
    echo '<pre>'.(!empty($name) ? $name.': ' : ''); if($mode) { var_dump($val); } else { print_r($val); } echo '</pre>';
    if($die) die;
}
Позволяет выводить переменную с подписью (по умолчанию подпись «Содержимое переменной»), выводить просто или с указанием типов, а так же можно остановить дальнейшее выполнение кода. Очень удобно при отладке.


$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

print_p($array, 'Месяцы года');


Результат:

Месяцы года: Array
(
    [0] => Январь
    [1] => Февраль
    [2] => Март
    [3] => Апрель
    [4] => Май
    [5] => Июнь
    [6] => Июль
    [7] => Август
    [8] => Сентябрь
    [9] => Октябрь
    [10] => Ноябрь
    [11] => Декабрь
)

Функция var_export()

Она возвращает строковое представление переменной, в виде полноценного php-кода


$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

echo '<pre>';
var_export($array);
echo '</pre>';

Результат:


array (
  0 => 'Январь',
  1 => 'Февраль',
  2 => 'Март',
  3 => 'Апрель',
  4 => 'Май',
  5 => 'Июнь',
  6 => 'Июль',
  7 => 'Август',
  8 => 'Сентябрь',
  9 => 'Октябрь',
  10 => 'Ноябрь',
  11 => 'Декабрь',
)

Функция implode()

Эта функция предназначена для объединения элементов массива в строку. При этом для разделения элементов в строке, можно задать символ или набор символов, обычно это запятая или перенос строки. Для наглядности воспользуемся тегом <br/> переноса строки.

$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

$str = implode("<br/>", $array);
echo $str;
Результат:

Январь
Февраль
Март
Апрель
Май
Июнь
Июль
Август
Сентябрь
Октябрь
Ноябрь
Декабрь

Цикл foreach

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

$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

foreach ($array as $n => $row) {
	echo ($n + 1)  . '.' . $row; //Выведем номер элемента массива (не путать с индексом)
	if ($n < count($array) - 1) {
		echo "<br>\r\n";
	} 
}

Результат: 
1.Январь
2.Февраль
3.Март
4.Апрель
5.Май
6.Июнь
7.Июль
8.Август
9.Сентябрь
10.Октябрь
11.Ноябрь
12.Декабрь

Цикл for

Работает примерно так же как и foreach, однако нам нужно передать количество итераций (длину массива), чтобы цикл знал когда остановиться.

$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

for ($n = 0; $n <= count($array) -1; $n++) {
	//Обращаемся к элементам массива по индексу $n
	echo $n + 1 . '.' . $array[$n] . "<br>\r\n"; 
}

Результат такой же как и в прошлом примере
1.Январь
2.Февраль
3.Март
4.Апрель
5.Май
6.Июнь
7.Июль
8.Август
9.Сентябрь
10.Октябрь
11.Ноябрь
12.Декабрь

Цикл while


$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

$index = 0;
while ($index < count($array)) { //Цикл будет идти пока условие выполняется
	echo $index + 1 . '.' . $array[$index] . "<br>\r\n";
	$index++;
}

Результат тот же
1.Январь
2.Февраль
3.Март
4.Апрель
5.Май
6.Июнь
7.Июль
8.Август
9.Сентябрь
10.Октябрь
11.Ноябрь
12.Декабрь

Функция array_map()

Совсем экзотический пример с функцией array_map(). Она вызовет callback-функцию для каждого элемента массива.

$array = [
	'Январь',
	'Февраль',
	'Март',
	'Апрель',
	'Май',
	'Июнь',
	'Июль',
	'Август',
	'Сентябрь',
	'Октябрь',
	'Ноябрь',
	'Декабрь',
];

//Наша callback-функция
function arrDisplay($n){
	echo $n . '<br/>';
}

array_map('arrDisplay', $array);

Результат:
Январь
Февраль
Март
Апрель
Май
Июнь
Июль
Август
Сентябрь
Октябрь
Ноябрь
Декабрь

Пользуйтесь примерами из статьи. Желаю удачи!

Полезная статья?
(Нет голосов)
Вам также могут понравиться
Как подключить CSS и JS файлы к шаблону 1С Битрикс

Как подключить CSS и JS файлы к шаблону 1С Битрикс

Как правильно подключать стили и скрипты к шаблону 1С Битрикс.

Генерация оглавления статьи

Генерация оглавления статьи

В статье рассмотрен пример функции для генерации оглавления статьи блога или новости

Переменные доступные в компоненте 1С Битрикс

Переменные доступные в компоненте 1С Битрикс

В статье разобран список доступных в компоненте 1С Битрикс переменных, позволяющих получить доступ к различным параметрам и методам компонента.


Комментарии
Защита от автоматических сообщений
CAPTCHA
Введите слово на картинке