「PHPの基礎 - 変数」の版間の差分

ナビゲーションに移動 検索に移動
132行目: 132行目:
<br>
<br>
==== 浮動⼩数点数 ====
==== 浮動⼩数点数 ====
===== 浮動小数点の概要 =====
浮動⼩数点数は、⼩数を含めた数を表現できる型である。<br>
浮動⼩数点数は、⼩数を含めた数を表現できる型である。<br>
浮動小数点数(float型)のサイズは、AMD64またはx86により依存する。<br>
浮動小数点数(float型)のサイズは、AMD64またはx86により依存する。<br>
149行目: 150行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
===== 浮動小数点のキャスト =====
<code>floatval</code>関数 / <code>doubleval</code>関数は、他のデータ型から浮動小数点型に変換する。<br>
どちらも同様の機能であるが、<code>floatval</code>関数を使用した方がよい。<br>
<syntaxhighlight lang="php">
$num = "100";  // 文字列型として宣言
$num1 = floatval($num);
echo gettype($num1). PHP_EOL;  // floatと出力
$num2 = doubleval($num);
echo gettype($num2). PHP_EOL;  // doubleと出力
</syntaxhighlight>
<br>
変換の型を指定して明示的に変換する。<br>
どちらも同様の機能であるが、float型としてキャストした方がよい。<br>
<syntaxhighlight lang="php">
$num = "3.14";  // 文字列型として宣言
$num1 = (float)$num;
echo gettype($num1). PHP_EOL;  // floatと出力
$num2 = (double)$num;
echo gettype($num2). PHP_EOL;  // doubleと出力
</syntaxhighlight>
<br>
その他のデータ型から浮動小数点にキャストする。<br>
このキャスト結果は、整数型とほぼ同じである。<br>
<syntaxhighlight lang="php">
var_dump((float)"aaa");    // キャストの結果 : 0  (文字列の場合は、全て0となる)
var_dump((float)"999aaa");  // キャストの結果 : 999  (文字列 + 数値の場合は、文字の部分が削除されてキャストされる)
var_dump((float)"123");    // キャストの結果 : 123
var_dump((float)"999.99");  // キャストの結果 : 999.99
var_dump((float)"4E2");    // キャストの結果 : 400
var_dump((float)true);      // キャストの結果 : 1
var_dump((float)false);    // キャストの結果 : 0
var_dump((float)null);      // キャストの結果 : 0
</syntaxhighlight>
<br>
==== NaN ====
==== NaN ====
数値演算の結果が定数NaNで表される値になることがある。<br>
数値演算の結果が定数NaNで表される値になることがある。<br>

案内メニュー