Annotation of embedaddon/php/Zend/tests/indirect_call_array_004.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Indirect method call by array - Testing exception and method magics
! 3: --FILE--
! 4: <?php
! 5:
! 6: class foo {
! 7: static public function abc() {
! 8: throw new Exception('foo');
! 9: }
! 10: public function __call($a, $b) {
! 11: printf("From %s:\n", __METHOD__);
! 12: throw new Exception($a);
! 13: }
! 14: static public function __callStatic($a, $b) {
! 15: printf("From %s:\n", __METHOD__);
! 16: throw new Exception($a);
! 17: }
! 18: }
! 19:
! 20:
! 21: $arr = array('foo', 'abc');
! 22:
! 23: try {
! 24: $arr();
! 25: }
! 26: catch (Exception $e) {
! 27: echo $e->getMessage(), "\n";
! 28: }
! 29:
! 30: $arr = array('foo', '123');
! 31:
! 32: try {
! 33: $arr();
! 34: }
! 35: catch (Exception $e) {
! 36: echo $e->getMessage(), "\n";
! 37: }
! 38:
! 39:
! 40: echo "------\n";
! 41:
! 42: $foo = new foo;
! 43: $arr = array($foo, 'abc');
! 44:
! 45: try {
! 46: $arr();
! 47: }
! 48: catch (Exception $e) {
! 49: echo $e->getMessage(), "\n";
! 50: }
! 51:
! 52:
! 53: $foo = new foo;
! 54: $arr = array($foo, '123');
! 55:
! 56: try {
! 57: $arr();
! 58: }
! 59: catch (Exception $e) {
! 60: echo $e->getMessage(), "\n";
! 61: }
! 62:
! 63: ?>
! 64: --EXPECTF--
! 65: foo
! 66: From foo::__callStatic:
! 67: 123
! 68: ------
! 69: foo
! 70: From foo::__call:
! 71: 123
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>