테스트 사이트 - 개발 중인 베타 버전입니다

연산자를 변수 처리 할수 있는지요?? 채택완료

재아 10년 전 조회 2,706

 

$a="1";

$b="2";

$c="==";

echo "같음"; 

} else {

echo "같지 않음";

}?>

 

 

원래는 if($a==$b) 이어야겠죠..

 

근데 위처럼 $c 에 연산자를 넣어봤습니다. 해보니 안됩니다...

안되는게 맞는건지 아니면 방법이 있는건지요.. 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

10년 전

흠.. 그러면 굳이 변수가 아니라 define으로 하시면 어떨까요??

 

define("EQUALS", "=="); 요렇게 하시면 되지 않을가요??

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

재아
10년 전
알려주신대로 상수를 한번 지정해서 해봤습니다.

define("EQUALS", "==");
$a=2;
$b=2;

if ($a.EQUALS.$b) {
echo "같음";
} else {
echo"같지 않음";
}

안되서 $c=EQUALS; 이렇게 해도 해봤습니다.
if ($a.$c.$b) {

물론 다 안되긴 하지만, 원래 if 문 안의 조건 부분에서의 연산자 부분이 변수나 상수가 안되는게 맞는건지...
되는데 방법이 틀린건지 아니면 다른 무슨 편법이 있는지 공부 차원에서 알아보고 있습니다.

댓글을 작성하려면 로그인이 필요합니다.

10년 전

연산자를 변수에 대입하면 String으로 인식 되지 않을까요?

아마도 PHP에서는 연산자로 해석 한것이 아니고

$a(숫자) .$c(문자) .$b(숫자) == 문자 이렇게 인식 하지 않았나 생각드네요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

재아
10년 전
네 저도 곰곰히 생각해보니 연산자로 해석하는게 아니라 문자로 인식을 하는데요!
문자로 인식하지 않고 연산자로 인식할수 있는 어떤 다른 방법이나 비슷한 방법이 있나 해서요~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인