PHP SOAP 教程

一、SoapServer 服务器

1、__construct
作用:创建 SoapServer 对象
用法:__construct ( mixed wsdl [, array options] )
参数:wsdl 文件地址,options soap_version,encoding,actor,classmap
返回:对象

2、addFunction
作用:为客户端导出一个或多个函数
用法:addFunction ( mixed functions )
参数:functions 函数,一个或多个,全部 SOAP_FUNCTIONS_ALL
返回:无

3、getFunctions
作用:获取全部函数
用法:getFunctions ()
参数:无
返回:函数数组

4、setClass
作用:导出类中的全部函数
用法:setClass ( string class_name [, mixed args [, mixed ...]]
)
参数:class_name 类名 args 参数
返回:无

5、setPersistence
作用:允许保存在PHP之间的会话请求数据
用法:setPersistence ( int mode )
参数:mode SOAP_PERSISTENCE_SESSION SOAP_PERSISTENCE_REQUEST
返回:无

6、fault
作用:允许保存在PHP之间的会话请求数据
用法:fault ( string code, string string [, string actor [, mixed
details [, string name]]] )
参数:code 错误代码 string 简短错误信息 actor 导致错误的字符串 details 错误详细信息
返回:无

7、handle ( [string soap_request] )
作用:处理一个SOAP请求,调用必要的功能,并发送回一个响应。
用法:handle ( [string soap_request] )
参数:soap_request 请求
返回:无

二、SoapClient 客户端

1、__construct
作用:创建 SoapClient 对象
用法:__construct ( mixed wsdl [, array options] )
参数:wsdl 文件地址 或 null,
options
a、soap_version soap版本,encoding 编码,compression 压缩,classmap
b、http身份验证 :login , password
c、代理服务:proxy_host, proxy_port, proxy_login and proxy_password
d、证书验证:local_cert , passphrase
e、wsdl 为null 时:location , uri
返回:对象

2、__call
作用:调用函数
用法:__call ( string function_name, array arguments [, array options
[, array input_headers [, array output_headers]]] )
参数:function_name,arguments
返回:无

3、__doRequest
作用:在执行HTTP请求
用法:__doRequest ( string request, string location, string action,
int version [, int one_way] )
参数:request XML的SOAP请求 location 请求地址 action ,version
返回:字符串

4、__getFunctions
作用:获取全部方法
用法:__getFunctions( )
参数:无
返回:函数数组

5、__getFunctions
作用:获取全部方法
用法:__getFunctions( )
参数:无
返回:函数数组

6、__setCookie
作用:设置cookie
用法:__setCookie ( string name [, string value] )
参数:name cookie名称 value cookie值
返回:无

7、__getLastRequest
作用:获取最后的请求
用法:__getLastRequest ()
参数:无
返回:最后的请求

8、__getLastRequestHeaders
作用:获取最后的请求头部信息
用法:__getLastRequestHeaders ()
参数:无
返回:最后的请求头部信息

9、__getLastResponse
作用:获取最后的回应
用法:__getLastRequest ()
参数:无
返回:最后的请求回应

10、__getLastResponseHeaders
作用:获取最后的回应头部信息
用法:__getLastResponseHeaders ()
参数:无
返回:最后的回应头部信息

三、SoapVar 参数

1、__construct
作用:创建 SoapVar 对象
用法:__construct ( mixed data, int encoding [, string type_name [,
string type_namespace [, string node_name [, string
node_namespace]]]] )
参数:data 数据,encoding 编码
返回:参数对象

四、SoapParam 参数

1、__construct
作用:创建 SoapParam 对象
用法:__construct ( mixed data, string name )
参数:data 传递的变量,name 变量的值
返回:参数对象

__construct ( string namespace, string name [, mixed data [,
bool mustUnderstand [, mixed actor]]] )

五、SoapHeader 头部

1、__construct
作用:创建 SoapHeade 对象
用法:__construct ( string namespace, string name [, mixed data [,
bool mustUnderstand [, mixed actor]]] )
参数: namespace 命名空间 name SOAP 头标签名称 ,data 头部内容
返回:对象

六、SoapFault 头部

1、__construct
作用:创建 SoapFault 对象
用法:__construct ( string faultcode, string faultstring [, string
faultactor [, mixed detail [, string faultname [, SoapHeader
headerfault]]]] )
参数: faultcode 错误代码,faultstring 错误信息 ,faultactor 导致错误字符串,detail
错误详情
返回:对象

七、例子

1、定义一个类

<?php

    class  Culculator
    {
        public   function  sum( $x , $y )
         {
             return   $x  +  $y ;
         }
    }  

    class Culculator
    {
        public function sum($x,$y)
         {
             return $x + $y;
         }
    }  

?>

2、使用Zend Studio生成wsdl文件;

3、SOAP 服务器端 (server.php)

<?php

    require   ‘./Culculator.php‘ ;  

    $server  = newSoapServer( ‘./wps.wsdl‘ );
    $server ->setClass( ‘Culculator‘ );
    $server ->handle();  

    require ‘./Culculator.php‘;  

    $server = newSoapServer(‘./wps.wsdl‘);
    $server->setClass(‘Culculator‘);
    $server->handle();

?>

3、SOAP 客户端(client.php)

<?php

    $soap  = newSoapClient( ‘./wps.wsdl‘ );
    echo   $soap ->sum(1,2);
    //运行输出 3
?>

PHP SOAP 教程

时间: 2024-10-10 23:46:28

PHP SOAP 教程的相关文章

C#使用SOAP调用Web Service

程序代码 using System;using System.IO;using System.Net;using System.Text; namespace ConsoleApplication1{ class Program    { static void Main(string[] args)        {            //构造soap请求信息            StringBuilder soap = new StringBuilder();            s

w3school教程整理

原文链接:http://www.flygon.net/w3school 原文链接:https://github.com/wizardforcel/w3school w3school教程整理 离线版大部分整理自 w3cschool ,少部分整理自 w3school ,由本人整理.感谢 w3cschool 站长的无私奉献.因本人精力有限,只提供PDF版.其他格式,请到官方离线教程下载处寻找.这些pdf都是开源的,每个pdf的附件中有html源码,需要epub或者mobi的人也可以自己编译. Angu

W3Cschool菜鸟教程离线版下载链接

请在电脑上打开以下链接进行下载w3cschool 离线版(chm):http://pan.baidu.com/s/1bniwRCV(最新,2014年10月21日更新)w3cschool 离线版(html):http://pan.baidu.com/s/1pJ3Ce9t PHP 教程(PDF):http://pan.baidu.com/s/1pJHkYCj C语言 教程(PDF):http://pan.baidu.com/s/1ntKCQTj jQuery EasyUI离线版 : http://p

菜鸟教程--Web Services 教程

Web Services 教程 www.runoob.com/webservices/webservices-tutorial.html 通过使用 Web Services,您的应用程序可以向全世界发布信息,或提供某项功能.Web Services 脚本平台需支持 XML + HTTP.现在开始学习Web Services!内容目录 Web Services 简介Web Services 可使您的应用程序成为 Web 应用程序.Web Services 通过 Web 进行发布.查找和使用. 对

Web Services 总结

您已经学习了 Web Services, 下一步学习什么内容呢? Web Services 概要 本教程已经向您讲解了如何把应用程序转换为网络应用程序. 您已经学习了如何使用 XML 在应用程序间发送消息. 您也学习了如何从应用程序导出某项功能(创建一个 web service). 您已经学习了 Web Services,下一步呢? 下一步您应当学习 WSDL 和 SOAP. WSDL WSDL 是基于 XML 的用来描述 Web services 以及如何访问它们的一种语言. WSDL 可描述

“wsimport -keep ”生成客户端报错“Use of SOAP Encoding is not supported.”

本来想用 “wsimport -keep ” 生成客户端,结果报错“Use of SOAP Encoding is not supported.” 应该是缺jar包, 闲麻烦就发现了百度经验上的 这个方法.以下是教程 wsdl文件生成客户端 首先我们需要知道webservice接口地址,这里我的测试地址为http://localhost:8085/Service/Function?wsdl.   右击另存为,保存为.wsdl的文件.   在eclipse中新建一个java项目.   将.wsdl

Ubuntu Server 16.04 安装 LEMP / LNMP 详细教程

本文标签:    安装LEMP/LNMP教程 Ubuntu LEMP MySQL Nginx UbuntuServer 互联网杂谈 LEMP 指的是 Linux + Nginx (发音 engine x 所以这里是 E 而不是 N) + MySQL + PHP 的简称,国内有些地方叫做 LNMP (因为 LNMP 没法读出来,而 LEMP 可以直接发音,所以今后本站教程一律都会写 LEMP) 以下操作均在 root 用户下完成,请使用 sudo -i 切换到 root 操作,或自行加入 sudo

libcurl教程

名称 libcurl 的编程教程 目标 本文档介绍使用libcurl编程的一般原则和一些基本方法.本文主要是介绍 c 语言的调用接口,同时也可能很好的适用于其他类 c 语言的接口. 跨平台的可移植代码 libcurl库背后的开发人员投入了相当大的努力确保libcurl可以在很多不同的系统和环境里工作. 全局的准备 程序必须初始化一些libcurl的全局函数.这意味着不管你准备使用libcurl多少次,你都应该,且只初始化一次.当你的程序开始的时候,使用 curl_global_init() 这个

WCF入门教程(五)配置文件

WCF入门教程(五)配置文件 服务协定以及实现写好后,需要将相关服务公布出去,就需要HOST来承载,供客户端来调用. 承载服务有两种方式,一种通过配置文件,一种通过代码进行配置.上一章已经介绍了代码方式来架设服务. 当然配置文件的方式还是很灵活,应用广泛. 通过此文章具体介绍WCF如果通过配置文件的方式进行配置. 一.配置文件功能 需要配置服务的EndPoint,设置相关绑定协议以及服务协定,并且还可以限定其具体的行为等. 二.配置文件结构 主要配置内容包括service节点.binding和b