Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DOMNode в строку , а потом в файл 
V
    Опции темы
takomac
Дата 25.7.2007, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 10.4.2007

Репутация: нет
Всего: нет



Проблема заключается в следующем 
: хочу сохранить один элемент в отдельный файл.
делаю примерно следующим  образом 
Код

function write_tree($node)
{
    $tmp = new DOMDocument("1.0");
    $element=$tmp->createElement($node->nodeName);
    $tmp->firstChild->appendChild($tmp->importNode($node));
    $tmp->formatOutput=true;
    $tmp->encoding="windows-1251";
    $tmp->save("some_".time().".xml");
}

на выходе получаю
файл с одним элементом названием узла $node->nodeName который оказывается пустым
при всем этом , если сделать 
Код

if ($tmp->firstChild->hasChildNodes()) print "true";
else print "false";

перед $tmp->save то напечатает true и если сделать 
Код

$tmp->firstChild->firstChild->nodeName;
 
то получим имя элемента $node , который приходит как параметр.

Одним предложением можно сформулировать проблему так:
Элемент присутствует при проверке в через класс DOMDocument , но отсудствует при дампе.



PM   Вверх
Golda
Дата 27.7.2007, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 5
Всего: 42



Для меня пока загадка, почему Вы через DOM видите свой элемент. Вы же создали элемент

Код

$element=$tmp->createElement($node->nodeName);


но не подключили его. Попробуйте исправить функцию так:

Код

function write_tree($node)
{
    $tmp = new DOMDocument("1.0");
    $tmp->formatOutput=true;
    $tmp->encoding="windows-1251";
    $tmp->appendChild($tmp->importNode($node, true));
    $tmp->save("some_".time().".xml");
}


Ну и проверки на ошибки стоит добавить


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
takomac
Дата 5.8.2007, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 10.4.2007

Репутация: нет
Всего: нет



спасибо
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: X технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0952 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.