2016-08-28 4 views
2

웹 서비스가 nusoap 라이브러리이고 nusoap은 PHP 5.3 및 5.5에서 제대로 작동하지만 현재 PHP 5.6에서 작업 중이며 다음과 마주 치고 있습니다. nusoap 라이브러리를 사용할 때의 오류 :PHP 5.6 (PHP 비누)에서 웹 서비스 만들기 및 PHP nusoap 라이브러리와 관련된 문제

Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0 

이 문제에 대해 많은 연구를했는데 성공하지 못했습니다.

나는 PHP는 5.6 nusoap의 호환 버전을 찾기 위해 시도했지만 어떤 해결책을 찾을 수 없습니다 마지막으로 SoapServer 및 SoapClient를 사용하기로 결정하고 다음 코드를 테스트 :

<?php 
class MyAPI { 
    function hello() { 
     return "Hello"; 
    } 
} 
$options=array('uri'=>'http://xx.com:800/webservice/'); 
$server = new SoapServer(NULL,$options); 
$server->setClass('MyAPI'); 
$server->handle(); 
?> 

및 클라이언트 파일로 다음

를 내가 클라이언트 파일을 호출 할 때
<?php 
$options = array('location' => 'http://xx.com:800/webservice/server.php', 
        'uri' => 'http://xx.com:800/webservice/'); 
$api = new SoapClient(NULL, $options); 
echo $api->hello(); 
?> 

는하지만 난 다음 오류가 발생할 :

Fatal error: Uncaught SoapFault exception: [Client] looks like we got no XML document in PATH\webservice\client.php:11 Stack trace: #0 PATH\webservice\client.php(11): SoapClient->__call('hello', Array) #1 PATH\webservice\client.php(11): SoapClient->hello() #2 {main} thrown in PATH\webservice\client.php on line 11 

당신은 나에게 좋은 솔루션을 줄 수 있습니까?

답변

2

PHP5에서 $ HTTP_POST_RAW_DATA가 사용되지 않습니다. file_get_contents ("php : // input");