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生成网页快照 不用COM不用扩展.
Feb 11 PHP
php 对输入信息的进行安全过滤的函数代码
Jun 29 PHP
PHP面向对象学习笔记之一 基础概念
Oct 06 PHP
PHP处理SQL脚本文件导入到MySQL的代码实例
Mar 17 PHP
php操作mongoDB实例分析
Dec 29 PHP
php实现中文字符截取防乱码方法汇总
Apr 29 PHP
PHP抓取及分析网页的方法详解
Apr 26 PHP
PHP中overload与override的区别
Feb 13 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
Aug 30 PHP
php如何计算两坐标点之间的距离
Dec 29 PHP
PHP中单例模式的使用场景与使用方法讲解
Mar 18 PHP
漂亮的thinkphp 跳转页封装示例
Oct 16 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
分享下页面关键字抓取www.icbase.com站点代码(带asp.net参数的)
2014/01/30 PHP
php bootstrap实现简单登录
2016/03/08 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
php session_decode函数用法讲解
2019/05/26 PHP
php实现简单的守护进程创建、开启与关闭操作
2019/08/13 PHP
javascript动态加载三
2012/08/22 Javascript
jQuery.buildFragment使用方法及思路分析
2013/01/07 Javascript
Jquery带搜索框的下拉菜单
2013/05/06 Javascript
jquery遍历数组与筛选数组的方法
2013/11/05 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
jQuery实现商品活动倒计时
2015/10/16 Javascript
JS+Canvas 实现下雨下雪效果
2016/05/18 Javascript
微信小程序页面传值实例分析
2017/04/19 Javascript
Vue中的数据监听和数据交互案例解析
2017/07/12 Javascript
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
2018/05/31 Javascript
vue异步加载高德地图的实现
2018/06/19 Javascript
vue动态删除从数据库倒入列表的某一条方法
2018/09/29 Javascript
layDate插件设置开始和结束时间
2018/11/15 Javascript
详解TypeScript+Vue 插件 vue-class-component的使用总结
2019/02/18 Javascript
原生js实现商品筛选功能
2019/10/28 Javascript
[55:18]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python装饰器使用方法实例
2013/11/21 Python
Python单例模式实例分析
2015/01/14 Python
Python正则表达式使用范例分享
2016/12/04 Python
Python正确重载运算符的方法示例详解
2017/08/27 Python
Python collections.defaultdict模块用法详解
2020/06/18 Python
Melijoe英国官网:法国儿童时尚网站
2016/11/18 全球购物
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
ORACLE第二个十问
2013/12/14 面试题
售后服务承诺书
2014/03/26 职场文书
青蓝工程实施方案
2014/03/27 职场文书
写给老婆的保证书
2015/02/27 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
html实现随机点名器的示例代码
2021/04/02 Javascript
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android