SimpleXML получить значение узла
Допустим, у меня есть следующая структура XML:
<?xml version="1.0" encoding="UTF-8"?>
<main>
<parent>
<child1>some value</child1>
<child2>another value</child2>
</parent>
</main>
Я сделал переменную XML, и теперь я хочу получить значения child1, поэтому я использую SimpleXML:
$xml = new SimpleXMLElement($xml);
$this->xmlcode = (string) $xml->main->parent->child1;
Но я получаю это сообщение: Обратите внимание: Попытка получить свойство не-объекта в /x.php в строке x
Я также попробовал это с помощью $xml->parent->child1, но безуспешно.
Кто-нибудь??
7
2 answers
$xml = new SimpleXMLElement($xml);
$this->xmlcode = (string) $xml->parent[0]->child1;
22
Author: vartec, 2011-04-08 10:14:19
Хороший пример использования XPath с php для SimpleXMLElement можно найти здесь http://www.php.net/manual/en/class.simplexmlelement.php#95229
// Find the topmost element of the domDocument
$xpath = new DOMXPath($xml);
$child1 = $xpath->evaluate('/main/parent/child1')->item(0);
2
Author: Paul, 2011-04-08 10:17:47