SCA::getService
(PECL SDO >= 0.5.0)
SCA::getService — Получить прокси для службы
Описание
Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.
Исследует целевой объект, инициализирует и возвращает соответствующий прокси. Если целевой объект является локальным PHP-компонентом, то возвращается SCA_LocalProxy. Если целевой объект - это WSDL-файл, то возвращается SCA_SoapProxy.
Список параметров
-
target
-
Абсолютный или относительный путь к целевому сервису или описание сервиса (например URL к описанию сервиса в формате json-rpc, PHP-компоненту, файлу WSDL и т.д.). Относительный путь разрещается относительно пути скрипта, из которого запускается getService(), а не относительно include_path или текущей рабочей директории
-
binding
-
Привязка (т.е. протокол), используемая для общения с сервисом (например binding.jsonrpc для сервиса json-rpc). Обратите внимание, что некоторые типы могут быть выведены из параметров целевого сервиса (например, если параметр заканчивается на .wsdl, то SCA будет использовать binding.soap). Могут быть указаны любые привязки, которые допустимы в аннотациях. К примеру, 'binding.soap' эквивалентно аннотации '@binding.soap'
-
config
-
Любые дополнительные параметры для привязки (например array('location' => 'http://example.org')). Могут быть указаны любые параметры, которые допустимы в аннотациях. К примеру, 'location' является эквивалентом аннотации '@location'
Возвращаемые значения
SCA_LocalProxy или SCA_SoapProxy.
Примеры
Пример #1 Пример использования SCA::getService()
В этом примере показывается как получить прокси к SOAP-сервису, определенному как EmailService.wsdl и расположенному по пути http://example.org.
<?php
include 'SCA/SCA.php';
$service = SCA::getService('EmailService.wsdl', 'binding.soap', array('location' => 'http://example.org'));
$service->send(...);
?>
Результат выполнения данного примера: