【手机软件出现fatal fatalerror什么意思】
soap协议这个古老的通过wsdl文件通讯的协议,使用极其不方便,但是还有一些顽固的国企在使用,没办法,有一些需求必须跟他们对接接口,怎么办呢,在使用soap协议调用时候,php在这方面资料很少,很容易用错 。
目前在PHP业界有两种使用方法:
一、使用soap扩展调用
二、引入lib/nusoap.php库,来操作
今天我重点来介绍的是第一种使用办法,第二种已经落后于时代了,不建议使用 。
特别注意:
php里面还有nowsdl的调用方式,不建议使用,原因:使用nowsdl过程发现只有php业务能正常通讯,其他语言调用服务无法正常使用,不能跨语言 。
我今天给大家介绍的是通过wsdl文件生成的soap服务,wsdl文件怎么生成可以使用zend工具 。
具体来看代码:
command.php就是soap的服务端
client.php 是客户端
command.wsdl文件
command.php
ini_set("soap.wsdl_cache_enabled", "0");
Class WebService
{
private $returnSuccess = \'success\';
private $returnFail = \'fail\';
public function command($param = []){
return [\'return\' => $this->returnSuccess.json_encode($param)];
}
}
//这里可以用外部生成好的wsdl文件
$server = new \SoapServer(\'command.wsdl\', [\'uri\' => "command.php", \'encoding\' => \'utf-8\']);
//设置服务类名
$server->setClass("WebService");
$server->handle();
client.php
header(\'Content-Type: text/xml; charset=UTF-8\');
$client = new \SoapClient(
\'http://127.0.0.1:8003/cmd-service/command.php?wsdl\',
[\'encoding\' => \'utf-8\', \'cache_wsdl\' => 0, \'compression\' => true]
);
try {
$param =[\'enterpriseId\' => 2,\'randVal\' => \'111\'];
//这里一定要加上parameters
$result = $client->__soapCall("command", [\'parameters\' => $param]);
} catch (Exception $e) {
echo $e->getMessage();exit;
}
echo $result->return;
command.wsdl文件
SoapDiscovery.class.php下载这个类库去生成或者 用zend生成require_once(\'command.php\');define(\'WSDL_FILE\',\'command.wsdl\');if(!file_exists(WSDL_FILE)){require_once(\'SoapDiscovery.class.php\');$sd = new SoapDiscovery(\'WebService\', \'command\');$str = $sd->getWSDL();file_put_contents(WSDL_FILE, $str);}
- oppoA3手机在哪里关掉耳机模式 华为手机上出现耳机符号怎么取消
- 汽车火花塞在哪个位置 汽车火花塞老化会出现什么情况
- 显示器出现黑屏如何处理好 电脑屏幕显示器黑屏怎么回事
- 手机排行软件有哪些,最受欢迎的手机软件排行
- 平面广告公司名称
- 内分泌怎么调节 调节内分泌
- 因为我脑子不好音译歌词 为什么脑子里会出现不好的事情
- 出现彩虹的地方风水好不好 彩虹风水中到底有什么用途
- 华为手机软件白名单在哪里设置 苹果手机白名单在哪里设置短信
- 电脑蓝屏显示错误重启是怎么回事 电脑出现错误蓝屏重启
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
