Добрый день. Есть код: PHP: $d_ph1 = '<Image ... />'; $d_ph2 = '<Image ... />'; $d_ph3 = '<Image ... />'; $images = $d_ph1.$d_ph2.$d_ph3; $xml = simplexml_load_file('file.xml'); $book = $xml->addChild('Book'); $book->addChild('Id', '$id'); $book->addChild('Category', '$ctg'); $book->addChild('Images', $images); $xml->asXML('file.xml'); После выполнения кода, в файле xml <Image ... /> записываются в одну строку. Подскажите пожалуйста как сделать, чтобы каждая <Image ... /> записывалась с новой строки?
так вам все же картинки как дочерние элементы добавлять надо или что,? могу предположить что как то так PHP: $images =array( '<Image ... />', '<Image ... />','<Image ... >'); $xml = simplexml_load_file('file.xml'); $book = $xml->addChild('Book'); $book->addChild('Id', '$id'); $book->addChild('Category', '$ctg'); foreach ($images as $img) { $book->addChild('Images', $img); } $xml->asXML('file.xml'); но это не перенос строк.... такого понятия в xml по сути нет
Странного чего-то хотите... В применении к приведенному коду можно использовать константу PHP_EOL: PHP: $d_ph1 = '<Image ... />'.PHP_EOL; Но удивительна реализация включения нескольких тегов Image как строки в качестве содержимого узла Images.