2013-04-04 4 views
-1

기본 API 호출을 실행 중이며 xml 파일을 반환합니다. 데이터를 통해 변수를 같게 설정 한 다음 에코를 반환합니다. 결과가 나오면 비어 있습니다. if 문을 추가하여 API 호출이 결과를 반환했는지 확인하는 방법은 무엇입니까?xml API 호출 결과가없는 경우

if($url_headers[0] == 'HTTP/1.1 200 OK' && (!empty($searchCode))) { 
     $xml = simplexml_load_file($searchCode); 
foreach ($xml->result->result as $result): 
    $cake=$result->{'cakename'}; 
    $icecream=$result->{'icecreamname'}; 


    echo "<ul class='cakes' >"; 
     echo "<li>$cake and $icecream</li>"; 
    echo "</ul>"; 
+0

아마도 $ searchCode는 API 호출의 결과입니까? 당신은 이미 반환 된 것이 있는지 검사하기 위해'! empty()'를 가지고 있습니다 ... 성공/실패에 상관없이 API가 무엇인가를 반환합니까? –

답변

0

당신은 기능 property_exists()을 찾고 있습니다. 다음과 같이 사용하십시오 :

$xml = simplexml_load_file($searchCode); 
if(!$xml 
    || !property_exists($xml, 'result') 
    || !property_exists($xml->result, 'result')) { 
    die('no results'); 
} 

물론 자세한 내용은이 오류 메시지를 자세히 설명 할 수 있습니다.

+0

정말 고마워요, 완벽하게 작동했습니다! – user2246907

+0

당신은 오신 것을 환영합니다! :) – hek2mgl

관련 문제