2017-12-12 6 views
0

ErrorCode & ErrorMessageノードの値をテストします。私のSimpleXMLオブジェクトへのアクセス

$x = '<exe:API_Error xmlns:exe="http://xxxxx.uk/APIResults"> 
    <exe:ErrorCode>ERRORS FOUND</exe:ErrorCode> 
    <exe:AdditionalInfo1/> 
    <exe:AdditionalInfo2>1-SX-A-J7A-000-USX00-SSX06-A203</exe:AdditionalInfo2> 
    <exe:ErrorMessage>Errors:[Account is not 22, 20, 19, or 9 in length.] 
</exe:ErrorMessage> 
</exe:API_Error>'; 


$xml = new SimpleXMLElement($x); 
$xml2 = simplexml_load_string($x); 

var_dump($xml); 

var_dump($xml2); 

私の出力は、しかし、私はXMLをロード

object(SimpleXMLElement)[1]

object(SimpleXMLElement)[3]

である、のvar_dumpだけで、私はSimpleXMLElementオブジェクトを持っていることを示しています。私はそのオブジェクトの任意のプロパティにアクセスすることができないようです。

var_dump($xml->API_Error); 

var_dump($xml2->API_Error); 

戻り

object(SimpleXMLElement)[3]

object(SimpleXMLElement)[3]

私はこの出くわす誰のためにPHP 5.6

答えて

0

を使用しています、その答えは、XPathを使用して関与。

1-SX-A-J7A-000-USX00-SSX06-A203

を:出力

$xml = new SimpleXMLElement($x); 

foreach($xml->xpath('//exe:API_Error') as $e) { 

    echo $e->xpath('//exe:AdditionalInfo2')[0]; 
} 

関連する問題