我正在尝试在php名称空间中使用常数:
define('API_VERSION', 'v201705');
我希望能够在下面的使用语句中使用上面的常数
use apiv201705service;
我不知道这是否可以,因为以下情况显然不起作用:
use api.API_VERSION.service;
在这种情况下,任何人都可以建议一种使用常数的不同方法吗?
任何帮助将不胜感激。
谢谢
我在这里使用的解决方法是类常数的用法。
然后
- 您不需要覆盖自动加载器
- 您可以在语义上分组
- "定义"具有全球可见性,在99%的用例中您不需要它。
- 您不需要实例化类即可使用类常数。因此,这是非常便宜的操作。
namespace My;
class StaticConfig {
const VERSION = '1.2.3';
}
...
use MyStaticConfig;
echo StaticConfig::VERSION;
实际上,这甚至不是解决方法,这是很普遍的做法。