(PHP 5, PHP 7, PHP 8)
SoapServer::addFunction — Добавляет одну или несколько функций для обработки запросов SOAP
Экспортирует одну или несколько функций удалённому клиенту
functionsДля экспорта одной функции, передайте в этот параметр её имя в виде строки.
Для экспорта нескольких функций, передайте в этот параметр массив с именами функций.
Для экспорта всех функций, передайте массив имён функций.
Начиная с PHP 8.4.0, передача целого числа (int) (включая константуSOAP_FUNCTIONS_ALL) устарела.
Используйте функцию get_defined_functions()
для получения всех функций и передайте их в виде массива.
Замечание:
Параметр
functionsдолжен принимать все входящие аргументы в том же порядке, как они определены в файле WSDL (они не должны принимать никаких возвращаемых параметров в качестве аргументов) и должны возвращать одно или больше значений. Для возврата нескольких значений, они должны возвращать массив с именованными возвращаемыми параметрами.
Функция не возвращает значения после выполнения.
| Версия | Описание |
|---|---|
| 8.4.0 |
Передача целого числа (int) в метод SoapServer::addFunction(),
включая константу SOAP_FUNCTIONS_ALL, больше не поддерживается.
|
Пример #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"));
$functions = array_merge(...get_defined_functions());
$server->addFunction($functions);
?>