|
|
|
| Есть простой скрипт создания XML:
$xml=new DomDocument('1.0','UTF-8'); // Создаем документ
$sorts = $xml->appendChild($xml->createElement('sorts')); // Создаем корень документа
$sort = $sorts->appendChild($xml->createElement('sort')); // Создаем группу в корне документа
$name = $sort->appendChild($xml->createElement('name')); // Создаем подгруппу внутри группы
$name->appendChild($xml->createTextNode('Яблоко')); // Присваиваем значения подгруппам
$xml->formatOutput = true; // устанавливаем выходной формат документа в true
$xml->save('yandex.xml'); // сохраняем файл
|
Покажите, пожалуйста на этом примере, как добавить CDATA к значению подгруппы?
Нужен такой результат:
<?xml version="1.0" encoding="UTF-8"?>
<sorts>
<sort>
<name><![CDATA[Яблоко]]></name>
</sort>
</sorts> | |
|
|
|
|
|
|
|
для: sega_z
(25.03.2012 в 16:05)
| | Что, неужели никто не знает??? | |
|
|
|
|
|
|
|
|
для: task
(26.03.2012 в 07:56)
| | По моему что то не верно получилось:
$xml=new DomDocument('1.0','UTF-8'); // Создаем документ
$sorts = $xml->appendChild($xml->createElement('sorts')); // Создаем корень документа
$sort = $sorts->appendChild($xml->createElement('sort')); // Создаем группу в корне документа
$name = $sort->appendChild($xml->createElement('name')); // Создаем подгруппу внутри группы
$cdata = $name->create_cdata_section('Яблоко'); // Присваиваем значения подгруппам
$name->appendChild($cdata); // Присваиваем значения подгруппам
$xml->formatOutput = true; // устанавливаем выходной формат документа в true
$xml->save('fail.xml'); // сохраняем файл
|
Fatal error: Call to undefined method DOMElement::create_cdata_section() | |
|
|
|
|
|
|
|
для: sega_z
(26.03.2012 в 08:04)
| | Никогда не занимался этим, но на php.net каждая функция имеет не только описание, но и примеры, так что, думаю, если потребутеся, то можно разобраться что и как делать. | |
|
|
|
|
|
|
|
для: task
(26.03.2012 в 08:07)
| | Дак я и посмотрел пример, но где то ошибка не могу понять что не так? | |
|
|
|
|
|
|
|
для: sega_z
(26.03.2012 в 08:10)
| | А какая у вас версия РНР? | |
|
|
|
|
|
|
|
для: task
(26.03.2012 в 08:23)
| | X-Powered-By: PHP/5.2.17 | |
|
|
|
|
|
|
|
для: sega_z
(26.03.2012 в 08:25)
| | Я могу и ошибиться, но вроде бы (если мне память не изменяет), это расширение поставлялось с РНР4, а в РНР5 нет, и чтобы оно работало в полной мере, нужна установка libxml. Вроде бы так, не помню, сочинять не буду, почитайте доки. | |
|
|
|
|
|
|
|
для: task
(26.03.2012 в 08:27)
| | Но, а сам то код создания XML я верно составил, с использованием CDATA? | |
|
|
|
|
|
|
|
для: sega_z
(26.03.2012 в 08:30)
| | Я уже говорил, что никогда не углублялся по данному вопросу, так что экспертом не могу быть. Чаще всего мне приходилось заниматься обратным - разбором xml. | |
|
|
|
|
|
|
|
для: task
(26.03.2012 в 08:39)
| | Хорошо, спасибо!
Надеюсь кто нибудь поможет мне разобраться ... | |
|
|
|
|
|
|
|
для: sega_z
(26.03.2012 в 08:46)
| | Но почему не работает функция create_cdata_section ()
Пробовал так:
$xml=new DomDocument('1.0','UTF-8'); // Создаем документ
$sorts = $xml->appendChild($xml->createElement('sorts')); // Создаем корень документа
$sort = $sorts->appendChild($xml->createElement('sort')); // Создаем группу в корне документа
$name->appendChild($sort ->createCDATASection('Яблоко')); // Создаем подгруппу внутри группы
$xml->formatOutput = true; // устанавливаем выходной формат документа в true
$xml->save('fail.xml'); // сохраняем файл
|
Выдает другую ошибку: Call to a member function appendChild() on a non-object | |
|
|
|