Annotation of embedaddon/php/tests/lang/039.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Catch Interfaces
! 3: --FILE--
! 4: <?php
! 5:
! 6: interface Catchable
! 7: {
! 8: }
! 9:
! 10: class MyException extends Exception implements Catchable
! 11: {
! 12: function __construct($errstr, $errno, $errfile, $errline)
! 13: {
! 14: parent::__construct($errstr, $errno);
! 15: $this->file = $errfile;
! 16: $this->line = $errline;
! 17: }
! 18: }
! 19:
! 20: function Error2Exception($errno, $errstr, $errfile, $errline)
! 21: {
! 22: throw new MyException($errstr, $errno, $errfile, $errline);
! 23: }
! 24:
! 25: $err_msg = 'no exception';
! 26: set_error_handler('Error2Exception');
! 27:
! 28: try
! 29: {
! 30: $con = fopen('/tmp/a_file_that_does_not_exist','r');
! 31: }
! 32: catch (Catchable $e)
! 33: {
! 34: echo "Catchable\n";
! 35: }
! 36: catch (Exception $e)
! 37: {
! 38: echo "Exception\n";
! 39: }
! 40:
! 41: ?>
! 42: ===DONE===
! 43: --EXPECTF--
! 44: Catchable
! 45: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>