php实现通过soap调用.Net的WebService asmx文件


Posted in PHP onFebruary 27, 2017

本文实例讲述了php实现通过soap调用.Net的WebService asmx文件。分享给大家供大家参考,具体如下:

最近,帮一个同行测试用.net写的WebService接口,C#调用通过,现在需要测试一下php版本对它的调用,经过各种探索,相关的PHP调用webservice的过程如下:

1.打开php相关扩展:

找到配置文件php.ini 文件, 打开以下扩展

extension = php_soap.dll
extension = php_curl.dll
extension = php_openssl.dll

2.php代码如下:

<?php
header("content-type:text/html;charset=utf-8");
$client = new SoapClient(" http://192.168.3.178:8080/ChkWelePsw.asmx?WSDL");
//本行测试不可行 $client = new SoapClient(" http://192.168.3.178:8080/chkwelepsw.asmx?WSDL/ChkWele?username=test3&psw=123");
//参数这样传递 先包装一下
$param = array('username'=>'test3','psw'=>'123');
//调用必须用__soapCall
$p = $client->__soapCall('ChkWele',array('parameters' => $param));
print_r($p->ChkWeleResult); //这里先输出一下变量$p,看看是什么类型。
?>

注意,在php调用某个方法后,其soap对象,就会自动产生一个Result方法,以方便显示调用结果,如上面的 被调用端的WebService的 “ChkWele”方法 ,

调用端就有相应的“ChkWeleResult”方法。

.NET部分 webservice要注意的地方

/*
 *  <system.web>在这个节点中加入如下内容
  <webServices>
   <protocols>
    <add name="HttpSoap"/>
    <add name="HttpPost"/>
    <add name="HttpGet"/>
    <add name="Documentation"/>
   </protocols>
  </webServices>
 */
[WebMethod(Description = "This......", EnableSession = false)]
public string ChkWele(string username, string psw)
{
  string ret = "";
  return ret;
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
两种php调用Java对象的方法
Oct 09 PHP
PHP 强制下载文件代码
Oct 24 PHP
php使用标签替换的方式生成静态页面
May 21 PHP
PHP模板引擎smarty详细介绍
May 26 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 PHP
PHP实现的构造sql语句类实例
Feb 03 PHP
最新版本PHP 7 vs HHVM 多角度比较
Feb 14 PHP
CodeIgniter 完美解决URL含有中文字符串
May 13 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
Jun 13 PHP
php好代码风格的阶段性总结
Jun 25 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 PHP
php+ajax实现文件切割上传功能示例
Mar 03 PHP
PHP 中使用ajax时一些常见错误总结整理
Feb 27 #PHP
PHP/HTML混写的四种方式总结
Feb 27 #PHP
老生常谈文本文件和二进制文件的区别
Feb 27 #PHP
php实现数据库的增删改查
Feb 26 #PHP
php查询及多条件查询
Feb 26 #PHP
php批量删除操作代码分享
Feb 26 #PHP
浅谈PHP的反射API
Feb 26 #PHP
You might like
第十节--抽象方法和抽象类
2006/11/16 PHP
体育彩票排列三组选三算法分享
2014/03/07 PHP
PHP开发注意事项总结
2015/02/04 PHP
PHP-FPM之Chroot执行环境详解
2015/08/03 PHP
在textarea文本域中显示HTML代码的方法
2007/03/06 Javascript
js prototype 格式化数字 By shawl.qiu
2007/04/02 Javascript
jQuery语法总结和注意事项小结
2012/11/11 Javascript
使用Jquery获取带特殊符号的ID 标签的方法
2014/04/30 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
浅析JavaScript作用域链、执行上下文与闭包
2016/02/01 Javascript
最棒的Angular2表格控件
2016/08/10 Javascript
Javascript Event(事件)的传播与冒泡
2017/01/23 Javascript
详解Angular Reactive Form 表单验证
2017/07/06 Javascript
浅谈Node.js ORM框架Sequlize之表间关系
2017/07/24 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
react用Redux中央仓库实现一个todolist
2019/09/29 Javascript
jQuery操作选中select下拉框的值代码实例
2020/02/07 jQuery
JavaScript实时更新当前的时间的示例代码
2020/07/15 Javascript
Vue的Options用法说明
2020/08/14 Javascript
vuex的使用和简易实现
2021/01/07 Vue.js
[43:48]Ti4正赛第一天 VG vs NEWBEE 2
2014/07/19 DOTA
tensorflow: variable的值与variable.read_value()的值区别详解
2018/07/30 Python
python引入不同文件夹下的自定义模块方法
2018/10/27 Python
djang常用查询SQL语句的使用代码
2019/02/15 Python
Django的Modelforms用法简介
2019/07/27 Python
windows下Python安装、使用教程和Notepad++的使用教程
2019/10/06 Python
使用tensorflow DataSet实现高效加载变长文本输入
2020/01/20 Python
Python网络爬虫四大选择器用法原理总结
2020/06/01 Python
python:HDF和CSV存储优劣对比分析
2020/06/08 Python
LN-CC美国:伦敦时尚生活的缩影
2019/02/19 全球购物
几个Shell Script面试题
2012/08/31 面试题
2015年大学生入党自荐书
2015/03/24 职场文书
家属联谊会致辞
2015/07/31 职场文书
《乘法分配律》教学反思
2016/02/24 职场文书
微信小程序中使用vant框架的具体步骤
2022/02/18 Javascript
SpringBoot详解执行过程
2022/07/15 Java/Android