You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

79 lines
1.8 KiB

<?php
/**
* @package tikiwiki
*/
// (c) Copyright by authors of the Tiki Wiki CMS Groupware Project
//
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
// $Id$
require_once 'tiki-setup.php';
$access->check_feature('feature_webservices');
/**
* Example of complex type
*/
class Tiki_ComplexType
{
/**
* Param 1
* @var string
*/
public $param1;
/**
* Param 2
* @var string
*/
public $param2;
}
/**
* Write your SOAP webservices as methods of this class, it will be automagically
* added to the WSDL file.
*
* Warning : while developing your web services, you should consider to set the
* soap.wsdl_cache_enabled parameter to 0 in your php.ini.
*/
class Tiki_WebServices
{
/**
* Prints some test data.
*
* @param string $param2
* @param string $param1
* @param string $param3
* @return string
*/
function test($param2, $param1, $param3)
{
return 'test1 ' . $param1 . ' test2 ' . $param2 . ' test3 ' . $param3;
}
/**
* Displays the Tiki_ComplexType data.
*
* @param Tiki_ComplexType $complex_param
* @return string
*/
function test_complex(Tiki_ComplexType $complex_param)
{
return $complex_param->param1 . ' =====> ' . $complex_param->param2;
}
}
if (is_null($_GET['wsdl'])) {
$protocol = isset($_SERVER['HTTPS']) ? 'https' : 'http';
$server = new Laminas\Soap\Server($protocol . '://' . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . '?wsdl');
$server->setClass('Tiki_WebServices');
$server->handle();
} else {
$wsdl = new Laminas\Soap\AutoDiscover();
$wsdl->setUri($_SERVER['SCRIPT_NAME']);
$wsdl->setClass('Tiki_WebServices');
$wsdl->handle();
}