PHP:SOAPWebService与JSON响应
我正在使用PHP:SOAPWebService与JSON响应,php,json,web-services,soap,Php,Json,Web Services,Soap,我正在使用SOAP在PHP中开发webservice,我必须以JSON格式返回响应Web服务方法很简单。它将数组作为输入,并应返回JSON对象。在webservice中注册方法如下: $server->register( 'getProducts', array('arr' => 'xsd:array'), array('return' => 'xsd:json') ); 我在方法内部做这件事: $sql3 = "SELECT name, price fro
SOAP
在PHP
中开发webservice
,我必须以JSON
格式返回响应<代码>Web服务方法很简单。它将数组
作为输入,并应返回JSON
对象。在webservice
中注册方法如下:
$server->register(
'getProducts',
array('arr' => 'xsd:array'),
array('return' => 'xsd:json')
);
我在方法内部做这件事:
$sql3 = "SELECT name, price from products WHERE status_id=$staus_id and cat_id=$cat_id";
$result3 = $conn->query($sql3);
$row3 = mysqli_fetch_all($result3, MYSQLI_ASSOC);
$json = json_encode($row3);
return $json;
而在客户端
端,我这样做是为了捕捉对象并对其进行回声:
$response = $client->getProducts($param);
echo $response;
但是当我运行客户端端脚本时,它什么也不提供(一个空的json
对象):
当我在$server->register
中将方法的返回类型更改为string
,并在方法中返回实际字符串时,它可以正常工作,但在JSON
对象的情况下则不行。有什么帮助吗?我猜,既然您在服务器端进行了json_编码,那么您必须在客户端进行json_解码
将最后一行的代码更改为:
echo $json;
到
我在这里猜测,因为您在服务器端进行了json_编码,所以必须在客户端进行json_解码
将最后一行的代码更改为:
echo $json;
到