@p4p

Форматирование xml документа при использовании simplexml [PHP]?

Документ изначально вида:

<?xml version="1.0" encoding="UTF-8"?>
<routes type="dynamic">
    <route name="xxx" url="/" module="xxx" controller="xxx" action="xxx"/>
    <route name="xxx" url="/xxx" module="xxx" controller="xxx" action="xxx"/>
    <route name="xxx" url="/xxx/xxx" module="xxx" controller="xxx" action="xx"/>
</routes>



На php добавляю элемент так:

$route = $xml->addChild('route');
$route->addAttribute('name', 'xxx');
$route->addAttribute('url', 'xxx');
$route->addAttribute('module', 'xxx');
$route->addAttribute('controller', 'xxx');
$route->addAttribute('action', 'xxx');
$xml->asXML ( $path );



Все прекрасно, но документ теряет человеко понятный вид. Новые элементы записываются после последнего, в 1 строку и без переносов-форматирования. Кто работал с xml, подскажите, как форматировать при сохранении?
  • Вопрос задан
  • 5702 просмотра
Решения вопроса 1
@p4p Автор вопроса
Так работает:

$domxml = new \DOMDocument('1.0');
$domxml->preserveWhiteSpace = false;
$domxml->formatOutput = true;
$domxml->loadXML($xml->asXML());
$domxml->save($path);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@thexplorer
$xml->formatOutput = TRUE;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы