다른 것을 기대하고 있었기 때문에 누군가 내가 왜 다음과 같은 결과를 얻었는지에 대한 단서가 있기를 바랬습니다.php의 스위치 조건에 관한 질문들
$x = NULL;
switch ($x) {
case "0":
echo "String";
break;
case 0:
echo "Integer";
break;
case NULL:
echo "NULL";
break;
case FALSE:
echo "Boolean";
break;
case "":
echo "Empty string";
break;
default:
echo "Something else";
break;
}
// outputs "Integer" was expecting "NULL"
$x=6;
switch ($x) {
case "6b":
echo "6b";
break;
case "6":
echo "6 empty";
break;
case 6:
echo "6 full";
break;
default:
echo "6 half";
break;
}
// outputs "6b" was expecting "6 empty"
네 말이 맞지만 잘못된 단락을 인용 한 것 같아. 문제의 비교는 문자열을 전혀 포함하지 않습니다. –
적어도 OP의 두 번째 예에는 문자열, 정수 및 숫자 문자열 *이 있습니다 (첫 번째 문자열에는 그다지 중요하지 않습니다). –
아, 두 번째 문자열이 있습니다. 와우, 무슨 불친절한 질문>. < –