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

Вывести массив в виде 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
2729
Следующая запись Время жизни сессии в PHP

Комментарии

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

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

Календарь на PHP
PHP-класс для вывода календаря на месяц, год или любой другой интервал с возможностью выделить отдельные даты и вывести к ним подсказки.
7629
+1
Сортировка массивов
В продолжении темы работы с массивами поговорим о типичной задаче – их сортировке. Для ее выполнения в PHP существует множество функций, их подробное описание можно посмотреть на php.net, рассмотрим...
36878
+3
Работа с FTP в PHP
Протокол FTP – предназначен для передачи файлов на удаленный хост. В PHP функции для работы с FTP как правило всегда доступны и не требуется установка дополнительного расширения.
5436
+1
Постраничный вывод массива
В случаях, когда нужно вывести большой PHP-массив постранично, без использования баз данных.
4826
+3
Генерация паролей в PHP
В PHP есть несколько функций для генерации случайного числа, это rand(), mt_rand() и random_int().
9994
+5
Работа с директориями в PHP
Набор PHP функций для работы с директориями, получение списка файлов в папке, копирование и удаление содержимого папок.
16564
+1