오늘 달성 할 수 있었던 몇 가지 혁신적인 방법으로 내 질문을 업데이트합니다. 나는 get_object_vars를 사용했다. 이 코드는 반복 할 값을 인쇄 할 수있었습니다. PHP에서 배열로 반환 된 웹 서비스를 구문 분석하는 방법
$fileStatus = $ServicesLink->GetFileStatus(array('Ticket'=>$ticket,'ProjectID'=>$pidobtained,'SourceLanguageID'=> "", 'TargetLanguageID'=> "",'FileID'=> "",'Filename'=>""));
$arrayPid = array();
foreach($fileStatus->GetFileStatusResult->FileStatuses->FileStatus as $fileStatusObtained)
{
$arrayPid = get_object_vars($fileStatusObtained);
//$arrayPid =$fileStatusObtained ;
}
echo is_array($arrayPid) ? 'Array' : 'not an Array';
echo "<br>";
echo("Count of array ".count($arrayPid));
echo "<br>";
print_r('<pre>'. print_r($arrayPid) .'</pre>');
이 http://www.image-share.com/ijpg-1163-165.html
내가 그 결과로 본 것입니다.이제이 객체에는 FileID, FileName 등 필요한 값과 함께 객체가 있기 때문에 오류 메시지가 표시되지만 출력을 볼 수 있습니다. 내가 사용하는 코드는 내가 다음과 같은 출력 http://www.image-share.com/ijpg-1163-166.html을 본이의 결과로
$fileStatus = $ServicesLink->GetFileStatus(array('Ticket'=>$ticket,'ProjectID'=>$pidobtained,'SourceLanguageID'=> "", 'TargetLanguageID'=> "",'FileID'=> "",'Filename'=>""));
$arrayPid = array();
foreach($fileStatus->GetFileStatusResult->FileStatuses->FileStatus as $fileStatusObtained)
{
$arrayPid = get_object_vars($fileStatusObtained);
//$arrayPid =$fileStatusObtained ;
}
echo is_array($arrayPid) ? 'Array' : 'not an Array';
echo "<br>";
echo("Count of array ".count($arrayPid));
echo "<br>";
//print_r('<pre>'. print_r($arrayPid) .'</pre>');
foreach($arrayPid as $val) {
echo ($val);
echo "<br>";
}
}
(위에서 그냥 아주 작은 변화가. 나는 foreach 문을 사용)이었다. 인덱스 번호 1이 개체를 차지하므로 문자열 변환시 오류가 발생합니다. 위의 코드에서 foreach 대신 For 루프를 사용하면 값을 인쇄 할 수 없습니다. 시도 :
for($i=0;$i<(count($arrayPid));$i+=1)
{
echo($arrayPid[$i]);
}
하지만 아무 것도 인쇄하지 않습니다.
어느 누구도 그 방법을 도와 줄 수 없으므로 배열 $ arrayPid 내의 값을 반복 할 수 있습니다.
의견, 전망, 의문점을 갖고 싶습니다. 나는 imageshare를 사용하고있어 유감 스럽지만 내 스크린을 공유 할 수있는 유일한 방법입니다.
감사 앤지
코드의 너무 많은! – emaillenin
비누 요청을하기 위해 어떤 도서관을 이용하고 있습니까? – hakre
저는 Soap 라이브러리를 사용하지 않습니다. 나는 그 URL을 사용하여 전화한다. 이 코드는 작동합니다. GetSourceLanguages에 대한 결과는 결과를 제공합니다. 내 쿼리는 배열 $ fileStatus에 대한 값을 추출하는 방법에 대해 더 자세히 설명합니다. ** GetSourceLanguagesResult-> 언어 -> Language in $ language ** while ** GetFileStatusResult-> FileStatuses-> FileStatus as $ fileStatusObtained ** 하지 않습니다. 웹 서비스의 xml 태그가 제대로 구문 분석되는지 확인하려고합니다. @ metillenin 지금 내 쿼리가 조금 더 명확 해지기를 바랍니다. 감사 –