get_defined_constants()를 실행했을 때 우연히 PHP에 이름이 true이고 값이 1인 내부 상수가 있다는 것을 발견했습니다. false와 null이라는 상수도 있습니다.
PHP는 true를 상수로 취급합니까? "가치"가 아니어야합니까?
부울 데이터 형식의 값이어야 하지 않나요?
echo(true)를 실행하려고 하면 브라우저에서 문자 1이 출력되고 var_dump(true)에서는 bool(true)가 출력됩니다. 이는 명백한 모순이 아닌가요?
게다가 true===1도 true가 아닙니다. true==1이 설정됩니다.
그래서 PHP가 true false null을 어떻게 처리하는지 알고 싶습니다.
get_defined_constants()를 실행했을 때 우연히 PHP에 이름이 true이고 값이 1인 내부 상수가 있다는 것을 발견했습니다. false와 null이라는 상수도 있습니다.
PHP는 true를 상수로 취급합니까? "가치"가 아니어야합니까?
부울 데이터 형식의 값이어야 하지 않나요?
브라우저 출력 문자 1인 echo(true)를 실행하려고 했더니 var_dump(true), 출력 bool(true)이 나오는데 이건 명백한 모순 아닌가요?
게다가 true===1도 true가 아닙니다. true==1이 설정됩니다.
그래서 PHP가 true false null을 어떻게 처리하는지 알고 싶습니다.
echo 입력은 문자열이므로 true가 유형 변환됩니다. 여기서 참고하시면 됩니다
<code>Printing or echoing a FALSE boolean value or a NULL value results in an empty string: (string)TRUE //returns "1" (string)FALSE //returns "" echo TRUE; //prints "1" echo FALSE; //prints nothing!</code>
참고문서
뒤틀린 건물. C++ 이야기를 들려주세요.
Windows API에는 BOOL
과 유사하게 정의된
<code class="cpp">typedef int BOOL;</code>
그리고 TRUE
및 FALSE
매크로가 있으며 각각
<code class="cpp">#define TRUE 1 #define FALSE 0</code>
C++ 자체에도 매크로 NULL
가 있으며 정의는
<code class="cpp">#define NULL 0</code>
그리고 나는 PHP가 true
을 부울 유형으로 취급한다고 생각합니다. 1. 추측만 해보면, 제가 틀렸다면 자유롭게 이의를 제기하시기 바랍니다.