Как распарсить xml через php?

Задача: требуется распарсить XML документ через php скрипт и поместить полученные данные в многомерном массиве. Решений на эту тему в интернете огромное множество, но я выбрал самое простое и, с моей точки зрения, гениальное.

Сначала нем необходимо получить содержимое файла:

$handle = fopen($xml_file_path, "rt");
if ($handle) {
	$file_data = "";
	while (!feof($handle)) {
		$file_data .= fgets($handle, 999);
	}
} else {
	echo "Error";
}
fclose($handle);

Содержимое файла у нас теперь в переменной $file_data. Теперь парсим содержимое и переводим в JSON, а потом в Array:

if ($file_data != "") {
	$xml_data = simplexml_load_string($file_data);
	$json_data = json_encode($xml_data);
	$array_data = json_decode($json_data,TRUE);
}

Все гениальное просто. На выходе получаем массив со всеми данными, секциями, атрибутами.

Posted in PHPПомеченные

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.