Return to autoload_018.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / tests / classes |
1.1 ! misho 1: --TEST-- ! 2: Ensure __autoload() allows for recursive calls if the class name differs. ! 3: --FILE-- ! 4: <?php ! 5: function __autoload($name) ! 6: { ! 7: echo "IN: " . __METHOD__ . "($name)\n"; ! 8: ! 9: static $i = 0; ! 10: if ($i++ > 10) { ! 11: echo "-> Recursion detected - as expected.\n"; ! 12: return; ! 13: } ! 14: ! 15: class_exists('UndefinedClass' . $i); ! 16: ! 17: echo "OUT: " . __METHOD__ . "($name)\n"; ! 18: } ! 19: ! 20: var_dump(class_exists('UndefinedClass0')); ! 21: ?> ! 22: --EXPECTF-- ! 23: IN: __autoload(UndefinedClass0) ! 24: IN: __autoload(UndefinedClass1) ! 25: IN: __autoload(UndefinedClass2) ! 26: IN: __autoload(UndefinedClass3) ! 27: IN: __autoload(UndefinedClass4) ! 28: IN: __autoload(UndefinedClass5) ! 29: IN: __autoload(UndefinedClass6) ! 30: IN: __autoload(UndefinedClass7) ! 31: IN: __autoload(UndefinedClass8) ! 32: IN: __autoload(UndefinedClass9) ! 33: IN: __autoload(UndefinedClass10) ! 34: IN: __autoload(UndefinedClass11) ! 35: -> Recursion detected - as expected. ! 36: OUT: __autoload(UndefinedClass10) ! 37: OUT: __autoload(UndefinedClass9) ! 38: OUT: __autoload(UndefinedClass8) ! 39: OUT: __autoload(UndefinedClass7) ! 40: OUT: __autoload(UndefinedClass6) ! 41: OUT: __autoload(UndefinedClass5) ! 42: OUT: __autoload(UndefinedClass4) ! 43: OUT: __autoload(UndefinedClass3) ! 44: OUT: __autoload(UndefinedClass2) ! 45: OUT: __autoload(UndefinedClass1) ! 46: OUT: __autoload(UndefinedClass0) ! 47: bool(false) ! 48: