0
我正在嘗試使用PHP創建Web服務。下面是我的代碼 -PHP SOAP客戶端發送XML
Web服務器 -
require 'inventory_functions.php';
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
$server = new SoapServer("inventory.wsdl");
$server->addFunction("getItemCount");
$server->handle();
Inventory_functions.php -
function getItemCount($upc){
//in reality, this data would be coming from a database
$items = array('12345'=>5,'19283'=>100,'23489'=>'234');
return $items[$upc];
}
我的客戶測試 -
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
$client = new SoapClient("http://www.xxx.co.uk/service/inventory.wsdl");
$return = $client->getItemName('12345');
print_r($return);
當我運行這個everythign是OK。數字「5」將在我的瀏覽器中輸出。我真的需要的是如何通過XML向SOAP服務器發送數據的一些幫助,他們將把這些數據添加到MySQL中。
我該如何發送XML vie客戶端測試?
謝謝
我現在明白了,你真正想要的是發送XML到Web -服務。爲了做到這一點,你不能簡單地改變getItemCount PHP函數爲了接收一個字符串作爲輸入?如果你這樣做,客戶端可以將XML作爲字符串發送到函數getItemCount。爲了在將XML字符串嵌入Soap請求時避免混亂,您可以在發送之前將原始XML轉換爲base64字符串。 – bpatrao 2012-02-24 13:03:39