本文是一个使用php soap访问webservice的例子. wsdl文件请见http://www.webxml.com.cn/这个网站. 里面有很多好用的服务器. 大部分可以免费使用, 有一部分要收费. 以中文简繁转换为例. 简繁转换的wsdl文件地址为:http://webservice.webxml.com.cn/WebServices
本文是一个使用php soap访问webservice的例子.
wsdl文件请见http://www.webxml.com.cn/ 这个网站. 里面有很多好用的服务器.
大部分可以免费使用, 有一部分要收费.
以中文简繁转换为例.
简繁转换的wsdl文件地址为: http://webservice.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx?wsdl
下面是PHP代码, 其中有说明.
<?php $wsdl = 'http://webservice.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx?wsdl'; // 以wsdl方式, 实例化类. $soap = new SoapClient( $wsdl ); var_dump ( $soap->__getFunctions() ); // 这是此接口可以提供哪些服务, 就是函数定义, 有参数, 有返回值 var_dump( $soap->__getTypes() ); // 这是此接口使用的数据类型.
以下为上面例子的返回值:
函数声明
<strong>array</strong> <em>(size=4)</em> 0 <span>=></span> <small>string</small> <span>'toSimplifiedChineseResponse toSimplifiedChinese(toSimplifiedChinese $parameters)'</span> <em>(length=80)</em> 1 <span>=></span> <small>string</small> <span>'toTraditionalChineseResponse toTraditionalChinese(toTraditionalChinese $parameters)'</span> <em>(length=83)</em> 2 <span>=></span> <small>string</small> <span>'toSimplifiedChineseResponse toSimplifiedChinese(toSimplifiedChinese $parameters)'</span> <em>(length=80)</em> 3 <span>=></span> <small>string</small> <span>'toTraditionalChineseResponse toTraditionalChinese(toTraditionalChinese $parameters)'</span> <em>(length=83)</em>
类型定义
<strong>array</strong> <em>(size=4)</em> 0 <span>=></span> <small>string</small> <span>'struct toSimplifiedChinese { string sText; }'</span> <em>(length=45)</em> 1 <span>=></span> <small>string</small> <span>'struct toSimplifiedChineseResponse { string toSimplifiedChineseResult; }'</span> <em>(length=73)</em> 2 <span>=></span> <small>string</small> <span>'struct toTraditionalChinese { string sText; }'</span> <em>(length=46)</em> 3 <span>=></span> <small>string</small> <span>'struct toTraditionalChineseResponse { string toTraditionalChineseResult; }'</span> <em>(length=75)</em>
从这个输出中, 可以看到,
<span>toTraditionalChineseResponse toTraditionalChinese(toTraditionalChinese $parameters)</span>
这是简体转换为繁体的函数.
参数 toTraditionalChinese
结构为:
<span>struct toTraditionalChinese { string sText; }</span>
对应 于PHP, 就是一个数组, 以sText为键, 值为字符串,
例如: array( 'sText' => '要转成繁体的汉字' )
此函数的返回值为:
<span>struct toTraditionalChineseResponse { string toTraditionalChineseResult; }</span>
这对于PHP就是, 一个stdClass, 有一个叫做toTraditionalChineseResult的属性
下面是一个有完整返回值的PHP代码, 其中包含发送的xml信息和接收的xml信息.
<?php // wsdl地址 $wsdl = 'http://webservice.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx?wsdl'; // 实例化, trace表示要记录发送接收的xml数据 $soap = new SoapClient( $wsdl, array( 'trace' => true) ); // 直接调用这个函数, 因为在此对象中, 所有的函数都是以双下划线开头, 所以不会有冲突. $rs = $soap->toTraditionalChinese( array( 'sText' => '我要转成繁体哦, 龙' )); // 显示转换以后的值, stdClass对象. var_dump( $rs ); // 显示转换的内容, 字符串 echo $rs->toTraditionalChineseResult; echo '<hr>以下为收发信息'; // 发送HTTP头 var_dump( $soap->__getLastRequestHeaders() ); // 发送的HTTP_BODY var_dump( $soap->__getLastRequest() ); // 接收的HTTP头 var_dump( $soap->__getLastResponseHeaders() ); // 接收的HTTP_BODY var_dump( $soap->__getLastResponse() );
以下是上面这个例子的返回值:
object(stdClass)[2]
public 'toTraditionalChineseResult' => string '我要轉成繁體哦, 龍' (length=26)
我要轉成繁體哦, 龍
以下为收发信息
string 'POST /WebServices/TraditionalSimplifiedWebService.asmx HTTP/1.1
Host: webservice.webxml.com.cn
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.3.13
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://webxml.com.cn/toTraditionalChinese"
Content-Length: 305
' (length=269)
string '
' (length=305)
string 'HTTP/1.1 200 OK
Date: Thu, 17 Jul 2014 08:55:43 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Content-Length: 420
' (length=228)
string '

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

記事本++7.3.1
好用且免費的程式碼編輯器

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),