Вывести массив в виде PHP кода

Для вывода массива в виде PHP кода print_r() и var_dump() не подойдут, поэтому поможет функция:

function out_array($array, $var = 'array', $_livel = null)
{
	$out = $margin ='';
	$nr  = "\n";
	$tab = "\t";

	if (is_null($_livel)) {
		$out .= '$' . $var . ' = ';
		if (!empty($array)) {
			$out .= out_array($array, $var, 0);
		}
		$out .= ';';	
	} else {
		for ($n = 1; $n <= $_livel; $n++) {
			$margin .= $tab;
		}
		$_livel++;
	
		if (is_array($array)) {
			$i = 1;
			$count = count($array);
			$out .= 'array(' . $nr;
			foreach ($array as $key => $row) {
				$out .= $margin . $tab;
				if (is_numeric($key)) {
					$out .= $key . ' => ';
				} else {
					$out .= "'" . $key . "' => ";
				}
	
				if (is_array($row)) {
					$out .= out_array($row, $var, $_livel);
				} elseif (is_null($row)) {
					$out .= 'null';
				} elseif (is_numeric($row)) {
					$out .= $row;
				} else {
					$out .= "'" . addslashes($row) . "'";
				}
				
				if ($count > $i) {
					$out .= ',';
				}
				
				$out .= $nr;
				$i++;
			}
	
			$out .= $margin . ')';	
		} else {
			$out .= "'" .  addslashes($array) . "'";
		}
	}

	return $out;
}
PHP

Рекурсивная, легко настраивается и поддерживает многомерные массивы.

Использование:

$array = array(
	1 => null,
	2 => 'PHP',
	3 => 'CSS',
	4 => array(
		'JS',
		'jQuery',
		array(
			'Node.js'
		),
	)
);

echo out_array($array);
PHP

Результат:

$array = array(
	1 => null,
	2 => 'PHP',
	3 => 'CSS',
	4 => array(
		0 => 'JS',
		1 => 'jQuery',
		2 => array(
			0 => 'Node.js'
		)
	)
);
20.09.2019
Следующая запись Время жизни сессии в PHP

Комментарии

, чтобы добавить комментарий.

Другие публикации

В случаях, когда нужно вывести большой PHP-массив постранично, без использования баз данных.
2083
+2
Набор PHP функций для работы с файлами и директориями, получение списка файлов в папке, безопасное сохранение файлов.
10880
0
Так как Instagram и Fasebook ограничили доступ к API, а фото с открытого аккаунта всё же нужно периодически получать и...
10050
+6
В данном примере описано как вывести многоуровневый список checkbox и radio button из БД с помощью PHP функций...
6646
+2
В PHP есть несколько функций для генерации случайного числа, это rand(), mt_rand() и random_int().
4081
+3
Основные примеры работы с массивами PHP. Создание, наполнение, извлечение удаление значений.
21594
+4