나는 세금 번호를 확인하기위한 정부 웹 사이트에 요청하고 있습니다. 꽤 중첩 된 XML 응답을 얻었고 지금은 데이터를 구문 분석하고 데이터에 액세스하려고하는 순간 매우 좌절감을 느낍니다.이 PHP XML 응답의 데이터에 액세스하는 방법은 무엇입니까?
<params>
<param>
<value><array><data>
<value><string>UstId_1</string></value>
<value><string>SOMETAXNUM</string></value>
</data></array></value>
</param>
<param>
<value><array><data>
<value><string>ErrorCode</string></value>
<value><string>200</string></value>
</data></array></value>
</param>
<param>
<value><array><data>
<value><string>UstId_2</string></value>
<value><string>SECONDTAXNUM</string></value>
</data></array></value>
</param> ....
</params>
내가 new SimpleXMLElement()
과 결과를 분석 :
은 본질에서이 응답이다.
하지만 내가 진정으로 필요로하는 것에 액세스하는 데 성공한 것은 없습니다 ... 그리고 내가 필요한 것은 "ErrorCode"응답입니다 (이 경우에는 200입니다). 그런데
$xml = simplexml_load_string($xml_string);
$result = $xml->xpath('param');
$count = 0;
while(list(, $node) = each($result)) {
if ($count == 1){
return (string)$node->value[0]->array[0]->data->value[1]->{'string'};
}
$count ++;
}
우리가 그로부터 아무것도 구제받을 수 있는지 확인하려는 시도가 잘못되었음을 보여주십시오. – Script47
$ xml -> [ "param"] [1] -> [ "value"] -> [ 'array'] -> [ "data"] -> [ "value"] [ ]; – Matt
대신 OP에 넣으십시오. – Script47