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
함수 시그니처는 상수의 값을 전달해야 함을 의미하지만 함수 본문은 상수의 * name *이 전달 될 때만 올바르게 작동합니다. 인자없이 함수를 호출하면, 기본적으로 "is self :: 1 defined?"라는 질문을 받는다. 이것은 분명히 원하는 것이 아니다. – DCoder
네, 그건 상수를 얻으려는 나쁜 시도였습니다. (어쨌든 나는 여전히 이름을 얻고 싶습니다 .. (그리고 그 정의가되어 있는지 확인하십시오) – Alex