ホームページ > バックエンド開発 > PHPチュートリアル > PHP には、値が整数 1 である事前定義定数 true があります。これを理解するにはどうすればよいでしょうか?

PHP には、値が整数 1 である事前定義定数 true があります。これを理解するにはどうすればよいでしょうか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-10-10 11:56:26
オリジナル
2099 人が閲覧しました

get_define_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_define_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をどのように処理するかを知りたいです。

echo 入力は文字列なので、true は型変換されます。こちらを参照してください

リーリー

参考ドキュメント

曲がった建物。 C++ のストーリーを語ります。
Windows API には、同様に定義されたデータ型 BOOL があります

リーリー

次に TRUEFALSE マクロがあり、定義は

です リーリー

C++自体にもマクロNULLがあり、定義は

です リーリー

そして、PHP は true をブール型 1 として扱うのではないかと思います。単なる推測です。私が間違っている場合は、遠慮なく反論してください。

関連ラベル:
php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート