|   | php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login | 
| 
 PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits              [2019-02-11 09:44 UTC] nikic@php.net
 
-Status: Open
+Status: Feedback
  [2019-02-11 09:44 UTC] nikic@php.net
  [2019-02-11 10:06 UTC] nikstar at ukr dot net
  [2019-02-11 10:26 UTC] nikic@php.net
 
-Status:      Feedback
+Status:      Open
-Assigned To:
+Assigned To: derick
  [2019-02-11 10:26 UTC] nikic@php.net
  [2019-02-12 08:33 UTC] nikstar at ukr dot net
  [2019-02-12 08:42 UTC] nikic@php.net
 
-Status: Assigned
+Status: Wont fix
  [2019-02-12 08:42 UTC] nikic@php.net
 | |||||||||||||||||||||||||||||||||||||
|  Copyright © 2001-2025 The PHP Group All rights reserved. | Last updated: Fri Oct 31 01:00:01 2025 UTC | 
Description: ------------ Subclassing the SoapClient class and wrapping the call to the parent constructor will throw a fatal error even when wrapped in a try...catch(\Throwable $t). With PHP 7.3.2 try...catch(\Throwable $t) being a convenient method of adding fault tolerance and graceful degradation -- it is therefore very frustrating when a WSDL PARSE issue is encountered that an UNCATCHABLE script exiting fatal error is issued. Test script: --------------- <?php class SoapAgent extends \SoapClient { public function __construct(string $wsdl) { try { parent::__construct($wsdl); echo 'Success!' . PHP_EOL; } catch (\Throwable $t) { var_dump($t); } } } $client = new SoapAgent('test'); Expected result: ---------------- var_dump() of the Throwable object. Actual result: -------------- Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'test' : failed to load external entity "test" Process finished with exit code 255