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


Автор: Demogargon 21.9.2010, 14:55
В XML файле нужно найти опеределенный узел и обновить его атрибуты. 
Так я сделал поиск и удаление: 
Код

        function delete_news($sys) //удаляет новсть
        {
            $xml = new domDocument('1.0', 'UTF-8');
            $xml->load($this->xml_file);
            $root = $xml->documentElement;
            $spisok = $root->getElementsByTagName('news');
            for ($i = 0; $i < $spisok->length; $i++)    
            {
                    if($spisok->item($i)->getAttribute('system') == $sys){
                        $root->removeChild($spisok->item($i));}
                    else {
                    $arr['content'] =  $spisok->item[$i]->nodeValue;
                    $arr['date'] = $spisok->item($i)->getAttribute('date');
                    $arr['title'] =  $spisok->item($i)->getAttribute('title');
                    $arr['image'] =  $spisok->item($i)->getAttribute('image');
                    $arr['system'] =  $spisok->item($i)->getAttribute('system');
                    $news[$i] = $arr; 
                    }
            }
            $xml->save($this->xml_file);
            return $news;
        }

Возможно ли сделать update атрибута и содержимого найденого узла штатными средствами или нужно удалять старый и создавать новый?

Автор: Demogargon 21.9.2010, 15:51
Все, спасибо. Можно просто перезаписать setAttribute

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