const
STUFF = 1,
MORE_STUFF = 3,
...
LAST_STUFF = 45;
function($id = self::STUFF){
if(defined('self::'.$id)){
// here how do I get the name of the constant?
// eg "STUFF"
}
}
我可以得到它没有一个巨大的病例陈述?如何获取常量的名称?
你必须详细说明;目前它没有多大意义。你打算如何获得这个名字?从'$ id'的值?并且*为什么*你需要常量的名字?你打算用这个名字做什么? – knittl 2012-07-28 09:48:19
函数签名意味着您需要传递常量的值,但函数体只有在传递常量的*名称*时才能正常工作。当你不带任何参数地调用这个函数时,你基本上会问“是否定义了self :: 1”?这肯定不是你想要的。 – DCoder 2012-07-28 09:48:25
是的,这是一个不好的尝试,以获得恒定:(无论如何,我仍然想得到的名称..(并检查是否定义) – Alex 2012-07-28 09:49:36