Как я могу получить значение тега сначала "Код", например, из этого XML?
<soapenv:Envelope xmlns:soapenv = "http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<wsm:CreateCustomer>
<wsm:xmlCustomer>
<x60:Customer>
<x60:Code></x60:Code>
<x60:Shippment>
<x60:ShipToAddress>
<x60:Code></x60:Code>
<x60:ShipISOCountry></x60:ShipISOCountry>
</x60:ShipToAddress>
</x60:Shippment>
</x60:Customer>
</wsm:xmlCustomer>
</wsm:CreateCustomer>
</soapenv:Body>
</soapenv:Envelope>
Я должен использовать функцию SimpleXML? Спасибо!
Пространства имен wsm и x60 не объявлены, поэтому сам XML недействителен.






вы можете использовать xpath для этого.
$xml = new SimpleXMLElement($string);
$result = $xml->xpath('//*/x60:Code');
while(list( , $node) = each($result)) {
echo 'Code = ',$node,"\n";
break;
}
Где я не прав - sandbox.onlinephpfunctions.com/code/…
каждый устарел
wsm пространство имен не определено. ,
разорвать цикл после первой записи.
$crawler = new Crawler($xml); // composer require symfony/dom-crawler
$first = $crawler->filter('Customer')->filter('Code')->text();
$second = $crawler->filter('ShipToAddress')->filter('Code')->text();
Пожалуйста, покажите нам, что вы пробовали, но работает неправильно.