Andrey_f
Новичок
DOMElement, немогу понять одной вещи
Хочу сделать функцию котораябы возвращала XML ветку, и потом она присваивался основному дереву
Пример
Но в данном варианте вылезает ошибка "No Modification Allowed Error" вот на этой строчке
Я понимаю что я чтото не понимаю в DOM но немогу понять что. Знаю что будет все работать если в функцию передать по ссылке родительский элемент и созданый элемент добавить к родительскому (пример ниже), но мне надо автономно (без привязки в родительскому) создать Елемент (а в нем еще привязанные элементы), а потом уже этот элемент привязать к родительскому. т.е. может я не от того классса создаю елемент $page, может надо от DOMNodе создавать или еще от чего, подскажите!
Рабочий вариант, но мне надо сделать так чтобы в функцию не передовать по ссылке родительский элемент, а только потом результат функции присвавать к родительскому, т.е. функция должна возвращать ветку с элементами
Хочу сделать функцию котораябы возвращала XML ветку, и потом она присваивался основному дереву
Пример
PHP:
function create_page()
{
$page = new DOMElement('page');
$title = new DOMElement('title','заголовок');
$description = new DOMElement('description','описание');
$page->appendChild($title);
$page->appendChild($description);
return($page);
}
$DOM = new DOMDocument();
$site = $DOM->createElement('site');
$DOM->appendChild();
$site->appendChild(create_page());
echo $DOM->saveXML();
PHP:
$page->appendChild($title);
Рабочий вариант, но мне надо сделать так чтобы в функцию не передовать по ссылке родительский элемент, а только потом результат функции присвавать к родительскому, т.е. функция должна возвращать ветку с элементами
PHP:
function create_page(&$site)
{
$page = new DOMElement('page');
$site->appendChild($page);
$title = new DOMElement('title','заголовок');
$description = new DOMElement('description','описание');
$page->appendChild($title);
$page->appendChild($description);
return($page);
}
$DOM = new DOMDocument();
$site = $DOM->createElement('site');
$DOM->appendChild($site);
$site->appendChild(create_page($site));
echo $DOM->saveXML();