Heim  >  Artikel  >  php教程  >  php调用web service接口(.net开发的接口)

php调用web service接口(.net开发的接口)

WBOY
WBOYOriginal
2016-06-06 19:43:371151Durchsuche

实例代码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 ( "

实例代码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:

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 '

';<br>var_dump($client->__getFunctions());//获取服务器上提供的方法<br>echo "<hr>";
<p><br>echo 'SOAP服务器提供的Type:';<br>print_r($client->__getTypes());//获取服务器上数据类型<br>echo "</p><hr>";
<p><br>echo '执行GetGUIDNode的结果:';<br>//查询中国北京的天气,返回的是一个结构体<br>$result=$client->getWeather(array('CityName'=>'beijing','CountryName'=>'china'));<br>echo $result->GetWeatherResult;//显示结果</p>
<p>?></p>
<p>运行结果:<img  src="/inc/test.jsp?url=http%3A%2F%2Fimages.cnitblog.com%2Fblog%2F711963%2F201502%2F281156005025568.png&refer=http%3A%2F%2Fwww.cnblogs.com%2Fpigengcai%2Fp%2F4305130.html" alt="php调用web service接口(.net开发的接口)" ></p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>对try和catch进行实例说明</p>
<p>eg:</p>
<p><?php </p>
</p><p>//创建可抛出一个异常的函数 <br>function checkNum($number)  {  <br>	if($number>1)   {   <br>		throw new Exception("Value must be 1 or below");   <br>	}  <br>	return true;  <br>}  </p>
<p><br>//在 "try" 代码块中触发异常 <br>try  {  <br>	//If the exception is thrown, this text will not be shown  echo 'If you see this, the number is 1 or below';  <br>	checkNum(2);  <br>	<br>}catch(Exception $e){  <br>	//捕获异常<br>	echo 'Message: ' .$e->getMessage();  <br>} </p>
<p>?></p>
<p>上面代码将获得类似这样一个错误:</p>
<pre class="brush:php;toolbar:false">Message: Value must be 1 or below 

例子解释:

上面的代码抛出了一个异常,并捕获了它:

  1. 创建 checkNum() 函数。它检测数字是否大于 1。如果是,则抛出一个异常。
  2. 在 "try" 代码块中调用 checkNum() 函数。
  3. checkNum() 函数中的异常被抛出
  4. "catch" 代码块接收到该异常,并创建一个包含异常信息的对象 ($e)。
  5. 通过从这个 exception 对象调用 $e->getMessage(),输出来自该异常的错误消息

不过,为了遵循“每个 throw 必须对应一个 catch”的原则,可以设置一个顶层的异常处理器来处理漏掉的错误。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php安全编程—sql注入攻击Nächster Artikel:PHP中转义字符 (n r)