>  기사  >  백엔드 개발  >  PHP는 .Net의 WebService asmx 파일을 호출하기 위해 비누를 구현합니다.

PHP는 .Net의 WebService asmx 파일을 호출하기 위해 비누를 구현합니다.

高洛峰
高洛峰원래의
2017-02-28 14:50:571577검색

이 기사의 예에서는 비누를 통해 .Net의 WebService asmx 파일을 호출하는 PHP의 구현을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

최근에 동료의 도움을 받아 .net으로 작성된 WebService 인터페이스를 테스트했는데 C# 호출이 통과되었습니다. PHP 버전을 다양하게 탐색한 후 웹서비스를 호출하는 PHP 관련 프로세스는 다음과 같습니다.

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://www.php.cn/:8080/ChkWelePsw.asmx?WSDL");
//本行测试不可行 $client = new SoapClient(" http://www.php.cn/:8080/chkwelepsw.asmx?WSDL/ChkWele?username=test3&psw=123");
//参数这样传递 先包装一下
$param = array(&#39;username&#39;=>&#39;test3&#39;,&#39;psw&#39;=>&#39;123&#39;);
//调用必须用__soapCall
$p = $client->__soapCall(&#39;ChkWele&#39;,array(&#39;parameters&#39; => $param));
print_r($p->ChkWeleResult); //这里先输出一下变量$p,看看是什么类型。
?>

참고: PHP가 메소드를 호출한 후 해당 비누 객체는 호출 결과 표시를 용이하게 하기 위해 자동으로 Result 메소드를 생성합니다. 예를 들어 WebService의 "ChkWele" 메소드입니다. 위의 호출 측에서

호출 측에는 해당 "ChkWeleResult" 메소드가 있습니다.

.NET 부분 웹 서비스는

/*
 *  <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;
}

에 주의해야 합니다. .Net의 WebService asmx 파일을 호출하기 위해 비누를 구현하는 PHP에 대한 더 많은 기사를 보려면 PHP 중국어 웹 사이트에 주의하십시오. !

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.