如何修改php simplexml中的元素?

I need to update an xml node with an user supplied value; but I can't seem to be able to modify the simplexml object. any ideas?

xml structure:

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

And I am trying to do it like:

$original_xml = @simplexml_load_file("../test.xml");
$original_xml[$_POST['row_id']-1]->building = $_POST['building_txt'];

Do something like this:

$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();

The following works (you need to reference the units structure to indicate the row you'd like to retrieve:

$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());