我希望在命名空间内声明常量,当然它们不应该在外部可见。
使用 define() 将无效,因为它会使常量成为全局变量,而不管它执行的命名空间是什么(如果我理解得正确的话)。
那么,我可以这样做:
namespace paths;
const models = 'Models/';
const views = 'Views/';
const classes = 'Classes/';
同时,在其他地方:
require_once(paths\models.'user.php'); // works
require_once(models.'user.php'); // fails
此外,如果我执行以下操作:
namespace ns;
namespace subNs;
我是在ns\subNs还是subNs里面?
备注:我知道使用require_once('Models/user.php')会更简单,但这只是一个例子。
name\myConstant
吗? - Virus721