Return to interfaces_002.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / tests / classes |
1.1 ! misho 1: --TEST-- ! 2: ZE2 interface with an unimplemented method ! 3: --SKIPIF-- ! 4: <?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> ! 5: --FILE-- ! 6: <?php ! 7: ! 8: interface Throwable { ! 9: public function getMessage(); ! 10: public function getErrno(); ! 11: } ! 12: ! 13: class Exception_foo implements Throwable { ! 14: public $foo = "foo"; ! 15: ! 16: public function getMessage() { ! 17: return $this->foo; ! 18: } ! 19: } ! 20: ! 21: // this should die -- Exception class must be abstract... ! 22: $foo = new Exception_foo; ! 23: echo "Message: " . $foo->getMessage() . "\n"; ! 24: ! 25: ?> ! 26: ===DONE=== ! 27: --EXPECTF-- ! 28: ! 29: Fatal error: Class Exception_foo contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Throwable::getErrno) in %s on line %d