|
|
|
| И так здравствуйте. Вот и настал мой последний вопрос по XML.
В данном случае я разбираюсь с SimpleXML.
Вроде все понятно, чем-то напоминает DOM. У меня осталось несколько не маленьких вопросов.
Имеется xml документ. При выполнения код
<? $xml = simplexml_load_file("xml.xml"); var_dump($xml) ?>
| я получил результат.
object(SimpleXMLElement)#1 (1) {
["body"]=>
object(SimpleXMLElement)#2 (2) {
["@attributes"]=>
array(1) {
["bgcolor"]=>
string(4) "#000"
}
["p"]=>
string(4) "Text"
}
}
|
Вопросы:
1) Как получить значение атрибута body bgcolor?
2) Как добавить новый узел к узлу body?
3) Как добавить/изменить/удалить атрибуты(и значения)/узлы/текстовые узлы? | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(13.07.2011 в 10:20)
| | Вопрос не решен | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(13.07.2011 в 10:20)
| |
<?
$x = new SimpleXMLElement('<html><body bgcolor="#000"><p>text</p></body></html>');
$x->body->addChild('b', 'b text'); // добавление нового элемента в дерево
$x->body->addAttribute('onload', 'alert("Hello world!")'); // добавление нового атрибута
print $x->body->attributes()->bgcolor."\n"; // печатает содержимое bgcolor
print_r($x);
|
Результат:
#000
SimpleXMLElement Object
(
[body] => SimpleXMLElement Object
(
[@attributes] => Array
(
[bgcolor] => #000
[onload] => alert("Hello world!")
)
[p] => text
[b] => b text
)
)
|
Simplexml на то и simple. В нём нельзя что-либо удалить или изменить. Только добавить. Для полного контроля используется DOM | |
|
|
|
|
|
|
|
для: Саня
(13.07.2011 в 21:27)
| | Спасибо! | |
|
|
|