<?php namespace{ function foo(){ echo "I'm (g)root!\n"; } function foo2(){ echo "I'm (g)root2!\n"; } function foo3(){ echo "I'm (g)root3!\n"; } } namespace Baz{ Class Test { function foobar(){ foo3(); } } Class Test2 { function foobar(){ foo3(); } } echo 'Function resolved at runtime so output changes' . "\n"; foo(); if(true){function foo(){ echo "I'm not (g)root!\n"; }} foo(); echo '------' . "\n"; echo 'Call for test purpose before Baz\foo3() has been defined' . "\n"; $test = new Test(); $test->foobar(); echo '------' . "\n"; echo 'Function resolved at parsing time so output does not change' . "\n"; foo2(); function foo2(){ echo "I'm not (g)root2!\n"; } foo2(); echo '------' . "\n"; echo 'Function resolved at runtime so output changes' . "\n"; foo3(); eval("namespace Baz; function foo3(){echo 'I\'m not (g)root3!\n';}"); foo3(); echo '------' . "\n"; echo 'Method has already been called so using the old version' . "\n"; $test->foobar(); echo 'Method is called for the first time so using the new version' . "\n"; $test2 = new Test2(); $test2->foobar(); }
You have javascript disabled. You will not be able to edit any code.
Value for `_results` contains invalid data `array`