如何修改php simplexml中的元素?

如何修改php simplexml中的元素?,php,simplexml,Php,Simplexml,我需要用用户提供的值更新xml节点;但我似乎无法修改simplexml对象。有什么想法吗 xml结构: <xm> <unit> <building></building> </unit> <unit> <building></building> </unit> <unit> <building&

我需要用用户提供的值更新xml节点;但我似乎无法修改simplexml对象。有什么想法吗

xml结构:

<xm>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
</xm>

这样做:

$units = @simplexml_load_file("../test.xml");
$i = 1;
foreach($units->unit as $unit)
{
    if($i == $_POST['row_id'])
    {
        $unit->building = $_POST['building_txt'];
    }
    $i++;
}

echo $units->asXML();
以下工作(您需要参考
单元
的结构,以指示要检索的行:

$xml = simplexml_load_string('<xm>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
</xm>');

$row = $_POST['row_id'] - 1;
$xml->unit[$row]->building = 'Test';

var_dump($xml->asXML());
$xml=simplexml\u load\u字符串('
');
$row=$\u POST['row\u id']-1;
$xml->unit[$row]->building='Test';
var_dump($xml->asXML());
$xml = simplexml_load_string('<xm>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
   <unit>
        <building></building>
   </unit>
</xm>');

$row = $_POST['row_id'] - 1;
$xml->unit[$row]->building = 'Test';

var_dump($xml->asXML());