|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2015-11-18 18:29 UTC] nhojohl at gmail dot com
[2015-11-18 18:59 UTC] requinix@php.net
-Status: Open
+Status: Feedback
[2015-11-18 18:59 UTC] requinix@php.net
[2015-11-18 20:14 UTC] xela at xela dot org dot ua
-Status: Feedback
+Status: Open
-Package: Scripting Engine problem
+Package: Xdebug
[2015-11-18 20:14 UTC] xela at xela dot org dot ua
[2020-01-20 17:17 UTC] derick@php.net
-Status: Open
+Status: Wont fix
[2020-01-20 17:17 UTC] derick@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Nov 07 13:00:01 2025 UTC |
Description: ------------ I think, we can have two problems (bugs?) here: 1) Handled Exception throws in finally block; 2) finally is executed even with throw in catch block. Test script: --------------- <?php class DbTable { public function __construct() { try { throw new \Exception('Database made a boo boo'); } catch (\Exception $e) { // ok, reconnect } } } try { throw new \Exception('Server made a boo boo'); } catch(\Exception $e) { // do smth echo $e->getMessage()."\n"; throw $e; } finally { $db = new DbTable(); echo "Done\n"; } Expected result: ---------------- Server made a boo boo PHP Fatal error: Uncaught exception 'Exception' with message 'Server made a boo boo' in /var/www/html2/sstnet-xl/public/exception-test.php:15 Stack trace: #0 {main} thrown in /var/www/html2/sstnet-xl/public/exception-test.php on line 15 Fatal error: Uncaught exception 'Exception' with message 'Server made a boo boo' in /var/www/html2/sstnet-xl/public/exception-test.php on line 15 Call Stack: 0.0001 231296 1. {main}() /var/www/html2/sstnet-xl/public/exception-test.php:0 0.0001 237392 2. DbTable->__construct() /var/www/html2/sstnet-xl/public/exception-test.php:23 Actual result: -------------- Server made a boo boo Done PHP Fatal error: Uncaught exception 'Exception' with message 'Server made a boo boo' in /var/www/html2/sstnet-xl/public/exception-test.php:15 Stack trace: #0 {main} thrown in /var/www/html2/sstnet-xl/public/exception-test.php on line 15 Fatal error: Uncaught exception 'Exception' with message 'Server made a boo boo' in /var/www/html2/sstnet-xl/public/exception-test.php on line 15 Exception: Database made a boo boo in /var/www/html2/sstnet-xl/public/exception-test.php on line 6 Call Stack: 0.0001 231296 1. {main}() /var/www/html2/sstnet-xl/public/exception-test.php:0 0.0001 237392 2. DbTable->__construct() /var/www/html2/sstnet-xl/public/exception-test.php:23