目次
PHP5 での SOAP 呼び出しの実装プロセス
1. 基本概念
2. PHP5 での設定
3. Web サービスのメソッド、パラメータ、およびデータ型をクエリする

4 を表示できます。注文を送信します
ホームページ バックエンド開発 PHPの問題 phpのsoapメソッドを呼び出す方法

phpのsoapメソッドを呼び出す方法

Nov 30, 2021 am 11:27 AM
php soap

php soap メソッド呼び出し: 1. php.ini ファイル内の「php_soap.dll」を開きます; 2. Web サービスのメソッド、パラメーター、およびデータ型をクエリします; 3. 開発ドキュメントに従って XML 文字列を結合します; 4. ブラウザでコードを実行するだけです。

phpのsoapメソッドを呼び出す方法

#phpのsoapメソッドを呼び出す方法は?

ドッキングを実現するための php での SOAP 呼び出しの実装

PHP5 での SOAP 呼び出しの実装プロセス

この記事では、ある企業の iPhone 6 携帯電話予約インターフェース開発を例に取り上げます。 PHP5 プロセスでの SOAP 呼び出しの実装を紹介します。

1. 基本概念

SOAP (Simple Object Access Protocol) ) シンプル オブジェクト アクセス プロトコルは、分散環境または分散環境で情報を交換するための単純なプロトコルです。XML ベースのプロトコルです。次の 4 つの部分で構成されます: SOAP エンベロープ (エンベロープ)。エンベロープは、メッセージのコンテンツの記述を定義します。何を、誰が送信し、誰が受け入れて処理する必要があるか、および処理方法のフレームワーク、SOAP エンコーディング ルール(エンコーディング) ルール)、アプリケーションが使用する必要があるデータ型のインスタンスを表すために使用される、SOAP RPC 表現 (RPC) 表現)は、リモート プロシージャの呼び出しと応答のプロトコルを表し、SOAP バインディングは、基礎となるプロトコルを使用して情報を交換します。

WSDL (Web サービス記述言語) は XML を記述します。 Web サービスの標準 XML 形式である WSDL は、Ariba、Intel、IBM、Microsoft などの開発者によって提案されています。これは、特定の言語に依存しない抽象的な方法で、特定の Web サービスによって送受信される関連する操作とメッセージを定義します。その定義上、WSDL をオブジェクト インターフェイス定義言語として考えることはまだできません。たとえば、CORBA や COM などのアプリケーション アーキテクチャではオブジェクト インターフェイス定義言語が使用されます。 WSDL はプロトコル中立性を保ちますが、SOAP へのバインディングのサポートが組み込まれているため、SOAP との切り離せないリンクが確立されます。したがって、この記事で WSDL について説明するときは、通信プロトコルとして SOAP を使用していることを前提とします。

SOAP と WSDL は Web サービスの 2 つの主要な標準ですが、必ずしも接続されているわけではなく、独立して使用することもできます。それらの間の関係は、HTTP と Html の関係に似ています。前者はプロトコル、後者は Web サーバーの記述です。

2. PHP5 での設定

php 設定ファイル php.ini で、

extension=php_soap.dll
ログイン後にコピー

を見つけて、前にある; 記号を削除して、Web サービスを再起動します

3. Web サービスのメソッド、パラメータ、およびデータ型をクエリする

地方の電気通信会社の注文入力インターフェイスは http://***.******.com/services です。 / AcceptedBusiness?wsdl
SoapClient の __geunctions() および __getTypes() メソッドを使用して、インターフェイスのメソッド、パラメーター、およびデータ型を表示します。
__getFunctions にリストされているインターフェイスのみが、soap によって呼び出すことができます。
ルート ディレクトリにコード soap.php を作成します。

<?php
header("content-type:text/html;charset=utf-8");try {    $client = new SoapClient("http://***.******.com/services/AcceptedBusiness?wsdl");    print_r($client->__getFunctions());    print_r($client->__getTypes());  
} catch (SOAPFault $e) {    print $e;
}
?>
ログイン後にコピー

ブラウザで実行した後: http://localhost/soap.php、返される結果は次のとおりです

Array(
    [0] => ArrayOf_xsd_anyType introduceAcceptedBusiness(string $c3, string $c4, string $linkman, string $linknum, string $num, string $idcard, string $remark, string $address)
    [1] => ArrayOf_xsd_anyType introduceAcceptedBusinessByAiZhuangWei(string $subname, string $linkphone, string $idcard, string $address, string $businesstype, string $marketcode, string $surveycode, string $commanager, string $commanagerphone, string $bendiwang, string $fenju, string $zhiju, string $remark)
    [2] => string introduceAcceptedBusinessByStandardInterface(string $xmlStr)
    [3] => string introduceAcceptedBusinessByCallOut(string $xmlStr)
    [4] => string introduceAcceptedBusinessByYddj(string $xmlParam)
    [5] => ArrayOf_xsd_anyType queryAcceptedBusinessByAiZhuangWei(string $surveycode, string $starttime, string $endtime)
    [6] => string queryCallOutOrderByConfig(string $xmlParam)
)Array(
    [0] => anyType ArrayOf_xsd_anyType[]
)
ログイン後にコピー

メソッドは、introducedAcceptedBusinessByStandardInterface (文字列 $xmlStr) は、開発ドキュメントで説明されている使用されるインターフェイスになります。パラメータは XML 文字列

です。さらに、一部のインターフェイスでは SoapHeader 認証について言及していますが、これには __setSoapHeaders メソッドを追加する必要があります。具体的には http://php.net/manual/zh/soapclient.setsoapheaders.php


4 を表示できます。注文を送信します

この手順では、次に従って XML 文字列を結合する必要があります。を開発ドキュメントに追加し、introducedAcceptedBusinessByStandardInterface のパラメータとして
を渡して、次の内容の acceptbusiness.php を作成します。

<?php
header("content-type:text/html;charset=utf-8");try {    $client = new SoapClient(&#39;http://***.*******.com/services/AcceptedBusiness?wsdl&#39;);    $xml = "
    <?xml version=&#39;1.0&#39; encoding=&#39;UTF-8&#39; ?>
    <PACKAGE>
      <C3>**电信</C3>
      <C4></C4>
      <LINKMAN>张三</LINKMAN>
      <LINKNUM>13412341234</LINKNUM>
      <LINKADDRESS>广东深圳</LINKADDRESS>
      <REMARK>iPhone 6</REMARK>
      <CHANNEL></CHANNEL>
      <GRIDCODE>1111111111111111111111111111111</GRIDCODE>
      <AGENTCODE>2111</AGENTCODE>
      <KEY>1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111</KEY>
    </PACKAGE>
  ";    $return = $client->introduceAcceptedBusinessByStandardInterface($xml);    print_r($return);
} catch (SOAPFault $e) {    print_r(&#39;Exception:&#39;.$e);
}
?>
ログイン後にコピー

ブラウザで実行すると、

<?xml version="1.0" encoding="UTF-8"?>
<PACKAGE>
    <STATUS>0</STATUS>
    <REASON>入单成功!</REASON>
    <ORDERSEQ>2014100905523549742</ORDERSEQ>
</PACKAGE>
ログイン後にコピー

が返されます。学習: 「PHP ビデオ チュートリアル >>

以上がphpのsoapメソッドを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

この章では、CakePHP の環境変数、一般設定、データベース設定、電子メール設定について理解します。

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

See all articles