私は長い間 PHP を勉強してきましたが、PHP のリソース変換は Java に似ていると思いましたが、よく見てみるとまだ多くの違いがあることがわかりました。私自身の PHP の学習体験について話します:
まず第一に、php が弱い型付け言語であることは誰もが知っていますか? ($ で始まる変数には任意の変数を保存できるため、PHP は弱い型指定言語であるとします。ただし、データ型を指定できないという意味ではなく、保存方法が特殊なだけです)、dataタイプ?
どのデータ型: 特定のデータ構造とそのデータ構造上で定義された特別な操作で構成される特定のデータ型を指します。
PHP には、整数、整数、浮動小数点、文字列、ブール、配列、オブジェクト、リソース、NULL などのさまざまなデータ型、単純なデータ型 (スカラー データ型) があることがわかりました。1 つのデータには値が格納されます。場合によっては、これらの場所のそれぞれを理解できない場合があります。理解を深めるために、要約してみましょう:
1 整数で使用できる最大の記憶域には制限があるためです。
整数は 4 バイトを占有します
1バイト = 8ビット
符号を表すには 1 ビットを使用する必要があります。最上位ビット (31)、0 は正、1 は負ですこの数値は、PHP の事前定義された定数 PHP_INT_MAX で表すことができます。数値が増加し続けると、浮動小数点数になります
。2 よく観察すると、最小値の絶対値が最大数の絶対値より 1 大きいことがわかります (2 の補数コンピュータによって決定され、ビット演算中に考慮されます)
3.
PHP は、整数データ (数値を表す場合、10 進数、8 進数、10 進数、16 進数の 3 つの形式を持つことができます) を定義するときに 3 つの基本表現方法をサポートします
8 進数: 0 から始まります。
16 進数: 0x で始まります。
10 進数: 通常!
0 または 0x は数値の一部ではなく、異なる塩基を区別するために PHP で使用される単なる構文であることを強調してください。
4. 手動変換
ルール: 10 進数をターゲットの底で割ります。余りと商が得られます。商がゼロでない場合は、引き続き商をターゲットの底で割って、余りと商を求めます。商がゼロになるまで、すべての余りを下から上に接続するだけです:
プログラムでよく使われる関数
12月10日
ビン、2
10月8日
16 進数、16
Decbin();10to2
デチェックス();10から16
Octdec();8 から 10 まで
5 つの浮動小数点数
PHP の浮動小数点数は単精度と倍精度を区別しません。PHP は倍精度のみを実装します。 Php の浮動小数点数は倍精度です。
1) 浮動小数点数のサポート科学表記法表現
2) Php が表現できる有効桁数14 桁有効桁数
3) 浮動小数点数を使用して浮動小数点数を比較することはできません
例:
if(1-0.2==0.8){//true を出力
}
if(1-0.8==0.2){//出力 false
}
この問題の原因:
10 進数を保存する場合は、2 進数に変換する必要があります。完全に表現できる数値はほとんどありません。
10進数を2進数に変換する方法:
2 を掛けて、積の整数部分を取得します:
すべての浮動小数点数は、正確な値ではなく、近似値を保存します。
6 ブール値論理関係の真偽を示します
7. 複合データ型、1 つのデータに複数の値を保存します
配列、オブジェクト
特別な8種類
NULL型