参考記事:(http://postd.cc/try-return-finally/)
※ 確認:php7
php で試してみました。
まずは普通の
<?php try { echo 1 ; } finally { echo 2 ; } echo 3 ;
これは、
123
と表示されます。
次は return を実行。
<?php try { echo 1 ; return ; } finally { echo 2 ; } echo 3 ;
これは、
12
と表示されます。
んで、次は exit 。
<?php try { echo 1 ; exit ; } finally { echo 2 ; } echo 3 ;
これは、
1
と表示されます。
return は(戻り先の)処理内で終了処理を行うので、 finally までしっかり実行されますが、
exit は即時終了なので finally は実行されません。
(die も exit と同じ挙動です。)
クイズみたいに他の人に出すと面白いかも。