첫째, 여기서 1과 0을 다루고 있으며 1 == true와 0 == false라는 것을 잘 알고 있습니다. 그러나 나는이 작동하지 않는 이유에 대해 궁금 :
$var = 1;
echo $var; /* 1 */
$var = $var === 0;
echo $var; /* Nothing */
echo $var;
의 두 번째 인스턴스 (false)를 0을 반환하고 대신 아무 것도 반환하지 않은 이유가 있습니까?
마찬가지로 !$var
도 아무 것도 반환하지 않습니다. 이 문제의 원인은 무엇입니까?
@DipeshParmar 물론 데이터 유형이 일치하지 않는 경우에도 false를 반환하는 더 많은 이유가 있습니다. 그러나 참조를 위해서'=='와 같은 일이 일어납니다. –
문자열로 전송 했으므로? –
@ZombieHunter * "부울 FALSE는" "(빈 문자열)로 변환됩니다.이것은 부울과 문자열 값 사이에서 앞뒤로 변환을 허용합니다. "* http://www.php.net/manual/en/language.types.string.php#language.types.string.casting 그들은 * – deceze