source: branches/version-2_11-dev/data/module/SOAP/example/server2.php @ 21410

Revision 21410, 2.6 KB checked in by Seasoft, 12 years ago (diff)

2.12系へマイルストーン変更となったチケット分を差し戻し
r21326 #1536
r21325 #1528
r21324 #1547,#1546
r21323 #1546
r21322 #1543
r21321 #1536
r21320 #1536
r21319 #1544
r21318 #1521,#1522
r21317 #1431

  • Property svn:mime-type set to text/x-httpd-php; charset=UTF-8
Line 
1<?php
2//
3// +----------------------------------------------------------------------+
4// | PHP Version 4                                                        |
5// +----------------------------------------------------------------------+
6// | Copyright (c) 1997-2003 The PHP Group                                |
7// +----------------------------------------------------------------------+
8// | This source file is subject to version 2.02 of the PHP license,      |
9// | that is bundled with this package in the file LICENSE, and is        |
10// | available at through the world-wide-web at                           |
11// | http://www.php.net/license/2_02.txt.                                 |
12// | If you did not receive a copy of the PHP license and are unable to   |
13// | obtain it through the world-wide-web, please send a note to          |
14// | license@php.net so we can mail you a copy immediately.               |
15// +----------------------------------------------------------------------+
16// | Authors: Shane Caraveo <Shane@Caraveo.com>                           |
17// +----------------------------------------------------------------------+
18//
19// $Id: server2.php,v 1.3 2005/03/10 23:16:40 yunosh Exp $
20//
21
22// first, include the SOAP/Server class
23require_once 'SOAP/Server.php';
24
25$server = new SOAP_Server;
26/* tell server to translate to classes we provide if possible */
27$server->_auto_translation = true;
28
29/* This is a simple example of implementing a custom
30   call handler.  If you do this, the soap server will ignore
31   objects or functions added to it, and will call your handler
32   for **ALL** soap calls the server receives, wether the call
33   is defined in your WSDL or not.  The handler receives two
34   arguments, the method name being called, and the arguments
35   sent for that call.
36*/
37function myCallHandler($methodname, $args)
38{
39    global $soapclass;
40    return @call_user_func_array(array($soapclass, $methodname),$args);
41}
42$server->setCallHandler('myCallHandler',false);
43
44require_once 'example_server.php';
45
46$soapclass = new SOAP_Example_Server();
47$server->addObjectMap($soapclass,'urn:SOAP_Example_Server');
48
49if (isset($_SERVER['REQUEST_METHOD']) &&
50    $_SERVER['REQUEST_METHOD']=='POST') {
51    $server->service($HTTP_RAW_POST_DATA);
52} else {
53    require_once 'SOAP/Disco.php';
54    $disco = new SOAP_DISCO_Server($server,'ServerExample');
55    header("Content-type: text/xml");
56    if (isset($_SERVER['QUERY_STRING']) &&
57       strcasecmp($_SERVER['QUERY_STRING'],'wsdl')==0) {
58        echo $disco->getWSDL();
59    } else {
60        echo $disco->getDISCO();
61    }
62    exit;
63}
64?>
Note: See TracBrowser for help on using the repository browser.