PHP Conference Nagoya 2025

SoapServer::addFunction

(PHP 5, PHP 7, PHP 8)

SoapServer::addFunctionДобавляет одну или несколько функций для обработки запросов SOAP

Описание

public SoapServer::addFunction(array|string|int $functions): void

Экспортирует одну или несколько функций удалённому клиенту

Список параметров

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);

?>

Смотрите также

Добавить

Примечания пользователей 1 note

up
11
dotpointer at gmail dot com
17 years ago
Be careful with SOAP_FUNCTIONS_ALL, as it adds ALL availiable PHP functions to your server.

This can be a potential security threat, imagine clients doing this:

echo $client->file_get_contents("c:\\my files\\my_passwords.doc");

And voila, they have the contents of your file my_passwords.doc.
To Top