PHP_命名空间

     namespace NS;

     define(__NAMESPACE__ .'\foo','111');
     define('foo','222');

     echo foo;     // 111.
     echo \foo;    // 222.
     echo \NS\foo  // 111.
     echo NS\foo   // fatal error. assumes \NS\NS\foo.

 

 define声明的常量 不受命名空间的影像

命名空间的常量应该用const

 

<?php 
namespace aa\bb;
class abc{
    const abc = 'abc';
}
class ghi{
    const ghi = 'ghi';
}

namespace ff\dd;
class def {
    const def = 'fde';
}
class abc{
    const abc = 'ddabc';
}

use aa\bb; //空间引入
echo abc::abc; //ddabc //work
echo bb\abc::abc; //abc //work

use aa\bb\ghi; // === use aa\bb\ghi as ghi
echo ghi::ghi; //ghi
//use aa\bb\abc; //元素引入必须是类,且不能和当前空间相同的类 //error
use aa\bb\abc as abc2;
echo abc2::abc; //abc

 

 

posted @ 2017-08-25 17:35  xiaobaicaidage  阅读(113)  评论(0编辑  收藏  举报