PHP は弱い型指定の言語です。変数を宣言するときに、変数に格納されるデータ型を指定する必要がないためです。ただし、PHP は弱い型指定の言語ですが、場合によっては型変換が必要になります。
PHP では次のような変換型が可能です:
変換演算子 | 変換型 | 例 |
boolean, bool | ブール型に変換 | (boolean)$num,(boolean)$ str |
string | はstringに変換されます | (string)$boo,(string)$flo |
integer, int | はintegerに変換されます | (integer)$boo,(integer)$str |
float、double | 浮動小数点型に変換 | (float)$str |
array | 配列に変換 | (array)$str |
object | オブジェクトに変換 | ( object)$str |
PHP での型変換は非常に簡単です。 変換方法は 3 つあります:
1 つ目:
変換する変数の前に括弧で囲んだ型名を追加するだけです。次のように:
<?php $num1=3.14; $num2=(int)$num1; var_dump($num1); echo "<br/>"; var_dump($num2); ?>
コード実行結果:
2番目のタイプ:
3つの特定のタイプの変換関数、intval()、floatval()、strval()を使用
<?php $a="123.9abc"; $int=intval($a); //转换后数值:123 var_dump($int); echo "<br/>"; $float=floatval($a); //转换后数值:123.9 var_dump($float); echo "<br/>"; $str=strval($float); //转换后字符串:"123.9" var_dump($str); ?>
コード実行結果:
3 番目の方法:
指定された変数を指定されたデータ型に変換できる settype() 関数を使用します。 構文は次のとおりです。
settype(mixed var,string type)
パラメーター var は指定された変数です。データ・タイプ。パラメータの型には、boolean、float、integer、array、null、object、string の 7 つのオプションの値があります。変換が成功した場合、setype() 関数は true を返し、それ以外の場合は false を返します。
<?php $num=12.8; $flg=settype($num,"int"); var_dump($flg); //输出bool(true) echo "<br/>"; var_dump($num); //输出int(12) ?>
コードの実行結果:
文字列が整数型または浮動小数点型に変換される場合、文字列が数値で始まる場合、数値部分は最初に整数に変換され、その後文字列が破棄されます。 ; 数値に小数点が含まれる場合は、小数点第 1 位が計算されます。
PHP データ型変換の例
この例では、最初と 3 番目のメソッドを使用して、指定された文字列型を変換し、2 つのメソッド間の違いを比較します。 コードは次のとおりです:
<?php header("content-type:text/html;charset=utf-8"); //设置编码 $num='3.1415926r*r'; echo '使用(integer)操作符转换变量$num类型:'; //使用integer转换类型 echo (integer)$num .'<br/>'; echo '输出变量$num的值:'.$num.'<br/>'; //输出原始变量$num echo '使用settype函数转换变量$num类型:'; echo settype($num,'integer').'<br/>'; //使用settype函数转换类型 echo '输出变量$num的值:'.$num; //输出原始变量$num ?>
コード 実行結果:
上記の例からわかるように、整数演算子を使用すると、変換された変数の型を直接出力でき、元の変数は一切変更されません。代わりに、settype() 関数は true である 1 を返し、実際のアプリケーションでは、必要に応じて変換方法を選択できます。
次のセクションでは、「データ型の検出方法」について説明します。
以上がPHPのデータ型変換例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。