本篇文章给大家带来的内容是关于php进行动态访问时命名空间如何使用(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
受PHP自身的动态特征的影响,在动态访问元素时,必须使用完全限定名,所以在动态的类、函数或常量名称中,限定名称和完全限定名没有区别,都是按照完全限定名进行解析
<?php namespace { const con=0; const test="test"; function foo(){ echo 'foo in global'."\n"; } class A{ static function foo(){ echo 'foo in global\A'."\n"; } } } namespace a\b{ const con = 1; const test="a\b\\test"; function foo(){ echo 'foo in a\b\foo'."\n"; } class A{ static function foo(){ echo 'foo in a\b\A'."\n"; } } $a='A'; $obj=new $a(); $obj->foo(); $a='\A'; $obj=new $a(); $obj->foo(); $a='a\b\A'; $obj=new $a(); $obj->foo(); $a='\a\b\A'; $obj=new $a(); $obj->foo(); $b="con"; echo constant($b)."\n"; $b="\con"; echo constant($b)."\n"; $b="a\b\con"; echo constant($b)."\n"; $b="\a\b\con"; echo constant($b)."\n"; $c="foo"; $c(); $c="\\foo"; $c(); $c="a\b\\foo"; $c(); $c="\\a\\b\\foo"; $c(); } ?>
The above is the detailed content of How to use namespace when php performs dynamic access (code). For more information, please follow other related articles on the PHP Chinese website!