SoapFault::__construct

(PHP 5, PHP 7, PHP 8)

SoapFault::__constructИнициализирует объект SoapFault

Описание

public SoapFault::__construct(
    array|string|null $code,
    string $string,
    ?string $actor = null,
    mixed $details = null,
    ?string $name = null,
    mixed $headerFault = null,
    string $lang = ""
)

Метод инициализирует объект SOAP-ошибки, на основе которого PHP-обработчик серверной части сообщает о сбое. Параметры faultcode, faultstring, faultactor и detail — стандартные элементы SOAP-ошибки.

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

faultcode

Код ошибки для объекта SoapFault.

faultstring

Сообщение об ошибке для объекта SoapFault.

faultactor

Строка идентификации участника, который сгенерировал ошибку.

detail

Подробности о причинах ошибки.

faultname

Название, которое указывает клиенту тип и структуру ошибки в WSDL-описании.

headerfault

Параметр указывают, чтобы об ошибках в заголовках запроса сообщить в SOAP-заголовке ответа.

lang
Язык текста сообщения об ошибке в объекте SoapFault. Параметр учитывается только в протоколе SOAP версии 1.2.

Список изменений

Версия Описание
8.5.0 В метод добавили необязательный параметр lang, чтобы объект ошибки соответствовал спецификации протокола SOAP 1.2.

Примеры

Пример #1 Примеры

<?php

function test($x)
{
return new
SoapFault("Server", "Сообщение об ошибке");
}

$server = new SoapServer(null, array('uri' => "http://test-uri/"));
$server->addFunction("test");
$server->handle();

SOAP-ошибки обрабатывают через механизм исключений PHP.

Пример #2 Несколько примеров

<?php

function test($x)
{
throw new
SoapFault("Server", "Some error message");
}

$server = new SoapServer(null, array('uri' => "http://test-uri/"));
$server->addFunction("test");
$server->handle();

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

  • SoapServer::fault() - Сообщает о сбое SOAP-сервера из-за ошибки
  • is_soap_fault() - Проверяет, произошла ли ошибка при вызове SOAP

Добавить

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

up
2
csnaitsirch at web dot de
15 years ago
The first Parameter of the constructor, the faultcode, of SoapFault must be a string. Otherwise it will lead to an error.

<?php
throw new SoapFault(1, "Error message!"); // wrong
throw new SoapFault("1", "Error message!"); // right
?>
To Top