Ошибка «Неопределенное исключение« DOMException »с сообщением« Ошибка пространства имен »» в
$dom = new DOMDocument('1.0', 'utf-8');
$root = $dom->createElement('MyRoot','Hello');
$root->setAttributeNS('http://www.w3.org/1999/xlink','xmlns:xlink','xlink');
$dom->appendChild($root);
die($dom->saveXML());
Как установить xmlns
объявление в корневом теге? производить
<MyRoot xmlns:xlink="http://www.w3.org/1999/xlink"/>Hello</MyRoot>
Пространство имен xmlns: xlink — это не его значение, а стандартное пространство имен. Префикс xmlns используется для стандартного пространства имен http://www.w3.org/2000/xmlns/
, Вам не нужно определять это пространство имен.
Все атрибуты пространства имен (кроме xmlns = «…») являются частью этого пространства имен.
$dom = new DOMDocument('1.0', 'utf-8');
$root = $dom->createElement('MyRoot','Hello');
$root->setAttributeNS(
'http://www.w3.org/2000/xmlns/','xmlns:xlink','http://www.w3.org/1999/xlink'
);
$dom->appendChild($root);
echo($dom->saveXML());
Выход:
<?xml version="1.0" encoding="utf-8"?>
<MyRoot xmlns:xlink="http://www.w3.org/1999/xlink">Hello</MyRoot>
Установите пространство имен XMLNS, а затем имя атрибута xmlns:xlink
, а затем значение атрибута, который вы хотите установить … который является URL-адресом xlink.
$dom = new DOMDocument('1.0', 'utf-8');
$root = $dom->createElement('MyRoot','Hello');
$root->setAttributeNS('http://www.w3.org/2000/xmlns/','xmlns:xlink','http://www.w3.org/1999/xlink');
$dom->appendChild($root);
die($dom->saveXML());
<?xml version="1.0" encoding="utf-8"?>
<MyRoot xmlns:xlink="http://www.w3.org/1999/xlink">Hello</MyRoot>