Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Изменение node в XML файле


Автор: devmstr 7.3.2008, 18:34
Вот например так читаю:

Код

<?php
  
  $doc = new DOMDocument();
  $doc->formatOutput = true;
$doc->load( 'RateOfExchange.xml' );
  
 
  $r = $doc->getElementsByTagName( "name" );
  //$r->item(1)->setNodeValue("Hello");
  echo "Value ".$r->item(1)->nodeValue."<br />";

  $doc->saveXML();
  $doc->save("RateOfExchange.xml");
  ?> 


Хотелось бы заюзать какой-нибудь метод типо setNodeValue - но увы ничего подобного не нашел. Как решить данную проблему?

XML файл:

Код

<?xml version="1.0"?>
<RateOfExchange>
  <currency>
    <name>Cur0</name>
    <value>5.00</value>
  </currency>
  <currency>
    <name>Cur1</name>
    <value>2.05</value>
  </currency>
</RateOfExchange>

Автор: mishaSL 7.3.2008, 19:06
devmstr, опишите пожалуйста словами что вы хотите сделать. Из вашего кода это не совсем понятно.

Автор: devmstr 7.3.2008, 19:43
Я хочу например изменить значение поля например name с cur0 на Hello

Автор: awers 7.3.2008, 23:44
Код

<?php
$dom = new DOMDocument();
$c =<<<EOD
<root>
    <mynode>Blah</mynode>
</root>
EOD;
$dom->loadXML($c);
$item = $dom->getElementsByTagName('mynode')->item(0);
$item->nodeValue = 123;
echo $dom->saveXML();
?>


Добавлено через 32 секунды
ну как вариант )

Автор: devmstr 9.3.2008, 06:59
спасибо

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)