SoapFault::__construct

(PHP 5, PHP 7, PHP 8)

SoapFault::__construct β€” Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ SoapFault

ОписаниС

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

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ SOAP-ошибки, Π½Π° основС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ PHP-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ сСрвСрной части сообщаСт ΠΎ сбоС. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ code, string, actor ΠΈ details β€” стандартныС элСмСнты SOAP-ошибки.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

code

Код ошибки для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° SoapFault.

string

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ± ошибкС для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° SoapFault.

actor

Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ участника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сгСнСрировал ΠΎΡˆΠΈΠ±ΠΊΡƒ.

details

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… ошибки.

name

НазваниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Ρ‚ΠΈΠΏ ΠΈ структуру ошибки Π² 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
3
csnaitsirch at web dot de ΒΆ
16 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
?>