Heim  >  Artikel  >  Backend-Entwicklung  >  php5 apache 2.2 webservice 创建与配置(java)_PHP教程

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

WBOY
WBOYOriginal
2016-07-21 15:32:42801Durchsuche

php 5 apache 2.2 webservice 创建与配置
测试工具:wsCaller.jar (此文是给java程序调用的webservice)
提示:要运行wsCaller.jar 要选安装jdk 如果没有安装jdk 则wsCaller.jar 会以压缩包的形式显示
1 写webservice 要用到的接口

复制代码 代码如下:

class service
{
function add($a,$b){
$c=$a+$b;
return $c;
}
function str($string){
return $string;
}
}
//require('cls_mysql.php');
//$db = new cls_mysql('localhost', 'root', 'root', test_db');
//$db = new cls_mysql('211.103.156.227:3306', 'root', 'txtx', test_db');
//'testwsdl.wsd需要在后面采用Zend Studio生成。
$server=new SoapServer('testwsdl.wsdl',array('uri' => 'http://webserver.com/','encoding'=>'utf-8','soap_version' => SOAP_1_2 ));
$server->setClass("service");
$server->handle();
?>

2.生成wsdl文件

菜单中

File--àExport---àphp    选中 “wsdl file” 然后下一步 (图1

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

File name wsdl 文件所在的位置

Exported files 下面的文件是你上面刚刚创建的php文件(接口文件)

Classes 下面的service 前面的勾要打上

URL 中填写接口文件的访问地址 (如:http://webserver.com/rpcservice.php

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

点击global settings 出现下图(图3

选择RPC – Oriented

然后点击 ok  在点击 “Finish”

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

出现下图(图4

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

最后一步就是给 每个参数一个合理的类型(下图)

然后保存 

到此 wsdl文件已经生成

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

访问路径  http://webserver.com/testwsdl.wsdl  (会出现下面内容)

如果不出现 则要配置apache 使其支持xml

注: 不要用chrome 打开wsdl文件 ,可能会显示不正常 (可以用ie firfox

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 


测试是否可以成功调用

测试工具

wsCaller.jar

注:必需安装JDK 才能运行wsCaller.jar  请不要解压wsCaller.jar

 

如果不能正确返回信息 可直接访问你的php 看看会不会报错

(本例http://webserver.com/rpcservice.php

 

Php 要支持 soap

如果php 版本是5.X 编辑 php.ini

extension=php_soap.dll  (添加 如果存在则去掉注释)

重启一下apache

apache 要注意这个文件 mime.types

php5 apache 2.2 webservice 创建与配置(java)_PHP教程 

 

函数添加新参数

找到message name=”函数名  中直接复制一下并把参数改一下参数名

WSDL文件

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

Php接口文件

1 function add($a,$b,$e){
2     $c=$a+$b+$e;
3     return $c;
4 }

注:$e 就是wsdl文件中的 c 参数  

添加新的函数

WSDL复制代码就行; PHP写出对应的函数 (看一下选中的部分 其实就是复制了一下add 这个函数 并且直接粘贴在它下面就可以)  下面以 添加add_bak 函数为例

WSDL

1.复制message 标签

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

2.复制 portType 中的标签

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

 

3.复制binding 标签内容

php5 apache 2.2 webservice 创建与配置(java)_PHP教程
PHP

复制代码 代码如下:

function add_bak($a,$b,$e){
$c=$a+$b-$e;
return $c;
}


测试结果

add_bak 函数

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

add 函数

php5 apache 2.2 webservice 创建与配置(java)_PHP教程

其它函数就不一一测试了截图了
如果有不对的地方,请指出 谢谢

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/322781.htmlTechArticlephp 5 apache 2.2 webservice 创建与配置 测试工具:wsCaller.jar (此文是给java程序调用的webservice) 提示:要运行wsCaller.jar 要选安装jdk 如果没有安装...
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