2012-12-04 4 views
0

변수에 저장된 조건이 $condition = "1==1"이고 조건문에 변수 값을 사용하고 싶습니다.조건에서 변수 값 사용

if($condition) { //$condition should be parsed as 1==1 
    return true; 
} 

이것은 가능합니까? var_export을 사용해 보았지만 분명히 작동하지 않습니다.

if(var_export($condition)) { 
    return true; 
} 

도움이 될 것입니다. 우리는이를 통과해야되지 않도록, 조건 자체가 문제가되지 않습니다,하지만 그것은 우리가 실현 기능

conditional_func($var . " == 'test'", $result); 

에 전달하는 방법, 발견 위의 설명에서 논의 후

+0

왜? "$ 조건은 1 == 1로 구문 분석되어야합니다"라는 말은 의심 스럽습니다 : X 어디에서 오는 것입니까? 왜 보입니까, 어떻게 보입니까? 그리고 – KingCrunch

+0

에 함수에서이를 실행하려고 시도하므로 조건이 변수로 전달됩니다. 'conditional_func ($ condition, $ result)' – PapaSmurf

+0

그리고 함수에'true' 또는'false' ('conditional_func (1 == 1, $ result)'을 의미)를 전달하지 않으시겠습니까? – KingCrunch

답변

0

첫 번째 매개 변수는 문자열이지만 부울을 직접 사용할 수 있으므로 문자열을 전혀 평가할 필요가 없습니다. (!) 참고로

conditional_func($var == 'test', $result); 

: @BryanMoyles 바로 질문에 대한된다 대답하지만, eval() 악이다 (당신이 발생할 수있는 함정, 생각할 수 없다)과 다른 한편으로는 일부가 기억 매우 덜 난해한 유스 케이스, 다른 접근법을 사용할 수없는 곳.