値が$_GET
またはから渡された場合$_POST
、それは自動的に文字列として扱われました。mysqlクエリから返された場合は、文字列として返されます。
せいぜい、 settypeを使用して整数に設定できます。そうは言っても、PHPは型とその値に関してはかなりリベラルです。
settypeの例:
<?php
$foo = "5bar"; // string
$bar = true; // boolean
settype($foo, "integer"); // $foo is now 5 (integer)
settype($bar, "string"); // $bar is now "1" (string)
?>
タイプからのメモ:
PHPは、変数宣言で明示的な型定義を必要としません(またはサポートしません)。変数のタイプは、変数が使用されるコンテキストによって決定されます。つまり、文字列値が変数$ varに割り当てられている場合、$varは文字列になります。次に整数値が$varに割り当てられると、整数になります。
PHPの自動型変換の例は、加算演算子「+」です。いずれかのオペランドがfloatの場合、両方のオペランドがfloatとして評価され、結果はfloatになります。それ以外の場合、オペランドは整数として解釈され、結果も整数になります。これは、オペランド自体のタイプを変更しないことに注意してください。唯一の変更点は、オペランドの評価方法と式自体のタイプです。