はじめに

PHP は 10 種類の基本型をサポートします。

4 種類のスカラー型:

  • 論理値 (boolean)
  • 整数 (integer)
  • 浮動小数点数 (float, double も同じ)
  • 文字列 (string)

4 種類の複合型:

そして、最後に 2 種類の特別な型:

  • リソース (resource)
  • ヌル (NULL)

本マニュアルでは、可読性を向上させるため、以下のような擬似的な型も使用します。

そして擬似変数 $...

マニュアル内のいくつかの場所で "double" 型という記述が残っているかもしれません。 double は float と同じものだと考えてください。2 種類の名前が存在するのは、 歴史的な理由によるものです。

変数の型は、基本的にプログラマが設定するものではありません。 その変数が使用される文脈に応じ、PHP が実行時に決定します。

注意: の型と値を正確に知りたい場合は、 var_dump() 関数を使用してください。

デバッグのために、単純に人間が読みやすい形で型を表示したい場合には gettype() を使用してください。型をチェックする場合には gettype() を使用してはいけません is_type 関数を使用してください。いくつかの例を以下に示します。

<?php
$a_bool 
TRUE;   // a boolean
$a_str  "foo";  // a string
$a_str2 'foo';  // a string
$an_int 12;     // an integer

echo gettype($a_bool); // prints out:  boolean
echo gettype($a_str);  // prints out:  string

// 数値であれば、4を足す
if (is_int($an_int)) {
    
$an_int += 4;
}

// $a_bool が文字列であれば, それをprintする
// (そうでなければ何も出力されない)
if (is_string($a_bool)) {
    echo 
"String: $a_bool";
}
?>

ある変数の型を強制的に他の型に変換したい場合、変数を キャスト するか、 settype() 関数を使用します。

変数は、その型に依存して異なった動作をする場合があることに注意してください。 詳細な情報については、 型の変換 のセクションを参照ください。 またPHP 型の比較表 もご覧ください。さまざまな型の変数の比較に関する例があります。