Обработка исключений сервера php SoapPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Обработка исключений сервера php Soap

Сообщение Anonymous »

У меня возникли трудности с обработкой ошибок и исключений на моем сервере PHP Soap. Иногда ошибки/исключения перехватываются моими обработчиками ошибок/исключений, а иногда нет. Это сводило меня с ума, но теперь я смог создать небольшой пример, иллюстрирующий проблему. Надеюсь, кто-нибудь сможет понять поведение и дать совет, что делать.

Рассмотрим следующий php-файл, в котором запущен мыльный сервер:





При раскомментировании первого исключения (1) и отправке запроса на сервер SOAP будет создан файлException.txt с следующее содержание:

Uncaught exception: qwer


Раскомментировав второе исключение (2) и отправив запрос на сервер SOAP, будет создан файлException.txt с следующее содержание:

Uncaught exception: asdf


Раскомментировав третье исключение (3) и отправив запрос на сервер SOAP, будет создан файл исключения.txt с следующее содержание:

Uncaught exception: bar


При раскомментировании четвертого исключения (4) и отправке запроса на мыльный сервер файлException.txt не будет создан! Но файл response.txt будет создан со следующим содержимым:


SOAP-ENV:Serverfoo


Странно то, что четвертое исключение никогда не достигает обработчика исключений. Вместо этого сообщение об исключении отправляется клиенту как ошибка мыла. Кто-нибудь может понять, почему? Я использую PHP 7.1.11.

Для тех, кто хочет попробовать, вот простой клиент PHP Soap. Просто измените http://www.example.com/server.php так, чтобы он указывал на описанный выше php-файл сервера SOAP.



Подробнее здесь: https://stackoverflow.com/questions/491 ... exceptions
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»