PHP 调用web service接口(.net开发的接口)
實例代碼1:
try {
$this->soapClientObj = new SoapClient(self::URL . '?wsdl', array('connection_timeout' => self::CONNECTION_TIMEOUT));
} catch (Exception $e) {
throw new Exception($e->getMessage(), $e->getCode());
}
?
實例代碼2:
<?php
header ( "Content-Type: text/html; charset=utf-8" );
/*
* 指定WebService路徑并初始化一個WebService客戶端
*/
$ws = "http://www.webservicex.net/globalweather.asmx?wsdl";//webservice服務的地址
$client = new SoapClient ($ws);
/*
* 獲取SoapClient對象引用的服務所提供的所有方法
*/
echo 'SOAP服務器提供的開放函數:';
echo '<pre>';
var_dump($client->__getFunctions());//獲取服務器上提供的方法
echo "<hr>";
echo 'SOAP服務器提供的Type:';
print_r($client->__getTypes());//獲取服務器上數據類型
echo "<hr>";
echo '執行GetGUIDNode的結果:';
//查詢中國北京的天氣,返回的是一個結構體
$result=$client->getWeather(array('CityName'=>'beijing','CountryName'=>'china'));
echo $result->GetWeatherResult;//顯示結果
?>
運行結果:
?
?
?
?
?
對try和catch進行實例說明
eg:
<?php
//創建可拋出一個異常的函數
function checkNum($number) {
if($number>1) {
throw new Exception("Value must be 1 or below");
}
return true;
}
//在 "try" 代碼塊中觸發異常
try {
//If the exception is thrown, this text will not be shown echo 'If you see this, the number is 1 or below';
checkNum(2);
}catch(Exception $e){
//捕獲異常
echo 'Message: ' .$e->getMessage();
}
?>
上面代碼將獲得類似這樣一個錯誤:
Message: Value must be 1 or below例子解釋:
上面的代碼拋出了一個異常,并捕獲了它:
不過,為了遵循“每個 throw 必須對應一個 catch”的原則,可以設置一個頂層的異常處理器來處理漏掉的錯誤。
轉載于:https://www.cnblogs.com/anyefrozen/p/4305130.html
總結
以上是生活随笔為你收集整理的PHP 调用web service接口(.net开发的接口)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 正月初八祭星星怎么祭 祭星点灯步骤详解
- 下一篇: 刺鼻的橡胶味有毒吗