我在使用命名空间中的常量方面遇到了一些问题.如果我定义常量并尝试使用它,
PHP似乎无法找到它.例如,在我的常量文件中,我的代码如下:
namespace \my\namespace\for\constants;
const DS = DIRECTORY_SEPARATOR;
然后在消费文件中我有:
namespace \some\other\namespace;
use \my\namespace\for\constants\DS as DS;
echo (realpath (DS . 'usr' . DS 'local'));
但是,不是按预期回显’/usr/local’,而是获得以下通知和空字符串.
Notice: Use of undefined constant DS – assumed ‘DS’
如果我更改代码如下:
use \my\namespace\for\constants as cns;
echo (realpath (cns\DS . 'usr' . cns\DS 'local'));
我得到了预期的结果,但它显然比仅仅能够直接拉出常数更不方便.
您可以在命名空间中为别名/接口/特征添加别名,您是否也不能为常量设置别名?如果你能做到,那怎么样?