array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'soapserver.addfunction.php', 1 => 'SoapServer::addFunction', ), 'up' => array ( 0 => 'class.soapserver.php', 1 => 'SoapServer', ), 'prev' => array ( 0 => 'class.soapserver.php', 1 => 'SoapServer', ), 'next' => array ( 0 => 'soapserver.addsoapheader.php', 1 => 'SoapServer::addSoapHeader', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/soap/soapserver/addfunction.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8)
SoapServer::addFunction — Добавляет одну или несколько функций для обработки запросов SOAP
Экспортирует одну или несколько функций удалённому клиенту
functions
Для экспорта одной функции, передайте в этот параметр её имя в виде строки.
Для экспорта нескольких функций, передайте в этот параметр массив с именами функций.
Для экспорта всех функций, задайте параметр константой SOAP_FUNCTIONS_ALL
.
Замечание:
Параметр
functions
должен принимать все входящие аргументы в том же порядке, как они определены в файле WSDL (они не должны принимать никаких возвращаемых параметров в качестве аргументов) и должны возвращать одно или больше значений. Для возврата нескольких значений, они должны возвращать массив с именованными возвращаемыми параметрами.
Функция не возвращает значения после выполнения.
Пример #1 Пример использования SoapServer::addFunction()
<?php
function echoString($inputString)
{
return $inputString;
}
$server->addFunction("echoString");
function echoTwoStrings($inputString1, $inputString2)
{
return array("outputString1" => $inputString1,
"outputString2" => $inputString2);
}
$server->addFunction(array("echoString", "echoTwoStrings"));
$server->addFunction(SOAP_FUNCTIONS_ALL);
?>