ホームページ >バックエンド開発 >PHPチュートリアル >データ型 PHP セクション 2 数値データ型

データ型 PHP セクション 2 数値データ型

WBOY
WBOYオリジナル
2016-07-29 08:48:291258ブラウズ

PHP は 8 つの基本データ型をサポートします。

4 ポイント型、

double
  • とも呼ばれます) string
  • (文字列) 2 つの複合型:
  • array (配列) オブジェクト
  • (オブジェクト) 最後に、特別なタイプが 2 つあります:

    resource
  • (リソース) NULL
  • (NULL) b
ウーリアン

データ型:
  • 値は True または False のみです。他の型がブール型に変換される場合、次の値は FALSE
  • とみなされます: Boolean
  • 値。
FALSE

自体 型全体 値0(ゼロ) 浮動小数点数
値0.0(ゼロ)

空の文字列、および文字列 "0"

  • 配列 要素を含まない メンバー変数を含まない オブジェクト
  • (PHP 4.0 にのみ適用可能) 特殊な型 NULL
  • (設定されていない変数を含む) XML ドキュメントから生成タグ (タグ) なし SimpleXML
  • オブジェクト の他のすべての値は TRUE とみなされます (すべての
  • リソース を含む)。
  • 整数データ型: 整数値は、10 進数、16 進数、または 8 進数で表すことができ、先頭にオプションの符号 (- または +) を付けることができます。
  • 8 進数表現の前に 0 (ゼロ) を付ける必要があり、16 進数表現の前に 0x を付ける必要があります。
  • 整数の語長はプラットフォームに依存しますが、通常の最大値は約 20 億 (32 ビット符号付き) です。 PHP は符号なし整数をサポートしていません。 Integer
  • 値の語長は定数
PHP_INT_SIZE

で表すことができます。PHP 4.4.0 および PHP 5.0.5 以降では、最大値は定数 PHP_INT_MAX で表すことができます。 指定された数値が
integer

の範囲を超える場合、

float

として解釈されます。同様に、演算結果が

integerの範囲を超える場合には、

float

も返されます。 PHPには整数の除算を行う演算子がありません。 1/2の利回りはfloat

0.5です。小数部分はいつでも破棄するか、round()関数を使用できます。 値をintegerに明示的に変換するには、(int)または(integer)を使用してキャストします。ただし、演​​算子、関数、または制御フローで

integer パラメーターが必要な場合、値は自動的に変換されるため、ほとんどの場合、キャストは必要ありません。関数 intval() を使用して値を整数に変換することもできます。 ブール値

から変換すると、

FALSE0(ゼロ)を生成し、TRUE1(1)を生成します。

浮動小数点から変換する場合、浮動小数点から整数に変換する場合、をゼロ方向に丸めます。浮動小数点数が整数の範囲 (通常 +/- 2.15e+9 = 2^31) の外にある場合、浮動小数点数には正確な整数の結果を与えるのに十分な精度がないため、結果は未定義になります。この場合、警告はなく、通知さえありません。

float データ型

浮動小数点数の語長はプラットフォームに依存しますが、通常、最大値は 10 進数 14 桁 (64 ビット IEEE 形式) の精度で 1.8e308 です。

0.10.7 のような一見単​​純な小数は、精度を少し損なうことなく内部バイナリ形式に変換できません。これは、混乱を招く結果につながる可能性があります。たとえば、floor((0.1+0.7)*10) は通常、期待される 8 ではなく 7 を返します。これは、結果の内部表現が実際には 7 のようなものであるためです。 9

これは、有限の桁数で特定の小数を正確に表現することが不可能であるという事実に関連しています。たとえば、10 進数

1/30.3 になります。

したがって、浮動小数点数の結果が最後の桁まで正確であるとは決して信じないでください。また、2 つの浮動小数点数が等しいかどうかを比較しないでください。本当に高い精度が必要な場合は、任意精度の数学関数または gmp 関数を使用する必要があります。

上記は、PHP セクション 2: データ型を含むデータ型を紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。