I have the following code inside a class:
$tmp= $this->Xml->xpath(\"/page/text[@id=\'$this->Id\']\");
$tmp[0]= $this->Text;
echo $tmp[0];
echo $t
Not found better way than this one:
$dom=dom_import_simplexml($xml_element); // $xml_element - in your case is $tmp[0]
$dom->nodeValue = "new value";
PHP's docs are in dire need of an example of this... the answer seems to be:
$tmp = $this->Xml->xpath("/page/text[@id='$this->Id']");
$tmp[0][0] = $this->Text;
echo $tmp[0][0];
echo $this->Xml->asXml();
$this->Xml->asXML($this->FileName); //save XML
Seems you need to refer to the node's first child, which would be the text (I'm assuming this is what's going on anyway).
Note the second brackets $tmp[0][0]
.
list( , $node) = each($tmp);
$node->asXML($this->FileName);