2011-02-13 2 views
2

내가 이것을 시작했을 때 나는 SOAP이나 그것이 작동하는 방법을 전혀 알지 못했다. 처음 몇 시간 동안 많은 것을 배웠고 그 결과 SOAP 서비스 (PHP로 작성)의 작동 테스트가있었습니다. 나는 PHP와 Visual Studio (내가 정말로 목표로 삼고있는)에서 SOAP 클라이언트를 만들고 원하는 정보를 반환 할 수있었습니다.PHP SOAP 서비스로 배열 반환하기

테스트 일 뿐이므로 더 많은 정보 (더 좋은 형식의 정보)를 반환하고 싶었 기 때문에 나는 그걸로 어지럽게하기 시작했습니다. 일부 유형을 추가하고 가져온 일부 스키마를 작성했습니다. 내가 필요한 모든 것을 추가하는 것을 끝내었을 때 (이것은 하나의 결과를위한 것이 전부였다) 나는 그것을 모두 저장하고 그것을 테스트했다. 오류없이 실행되었지만 아무 것도 반환하지 않았습니다.

다른 유형의 8 개 요소로 배열을 반환하려고합니다. 문자열 linkID를 - - INT 날짜 - 문자열 콘텐츠 - - 저자 int로 문자열을 아이디 - 아이콘 int입니다 -

제목 INT 편집 -

부울 : 여기에 해당 배열의 요소와 유형은 함수 GetNews는 배열 당 25 개를 반환합니다 (페이지 당 결과는 얻을 수있는 정수입니다).

배열을 직렬화하여 SOAP이 올바르게 반환 할 수있는 방법을 알 수 없습니다.

여기 내 WSDL 파일에 대한 URL입니다 :

http://api.infectionist.com/soap.wsdl

저를 도와주십시오, 나는 완전히 붙어입니다. 코드에 문제가있는 것을 볼 수 없으며, PHP와 Visual Studio에서 오류없이 실행됩니다. 단지 빈 결과를 반환합니다.

답변

0

PHP 내에서 전체 배열을 한 번에 가져 오려고한다고 생각합니까? 그렇다면 XML 문자열을 반환해야합니다. Like :

<?php 

return ' 
    <data> 
     <title>Actual title</title> 
     <linkId>154278</linkId> 
     ... 
    </data> 
'; 

?> 

SOAP 서버에서 데이터를 전송하는 대신 JSON 문자열을 사용하는 것으로 생각하십니까? 이렇게하면 한 요소에서 필요한 모든 요소를 ​​가질 수 있고 나중에 요소를 추가/제거 할 수있는 유연성을 유지할 수 있습니다 (고객에게이를 알릴 필요가 있음).

관련 문제