2016-12-06 25 views
-1

私は山車としてキャストする必要があるが、それを行うための2つの明らかに異なる方法を見てきたいくつかの文字列を持っている:PHPでfloatvalと(float)の違いは何ですか?

$float = floatval ($float); 

$float = (float) $float; 

は2つの方法のいずれかの違いはありますか?

+0

(フロート)が6倍高速です。したがって、私の助言はfloatval()の代わりにそれを使用することです – SimionZ

答えて

1

それ以外の場合は、浮動小数点として評価されます。つまり、$文字列は最初にINTとして解釈され、オーバーフローが発生します($文字列値2968789218は32ビットPHPの最大値(PHP_INT_MAX)を超え、2147483647です)、浮動小数点数FLOATVALは()

PHP Convert String into Float/Double

を見てください、このための最良の答えはTypecasting vs function to convert variable type in PHP

+0

興味深い情報、しかし**それは決して**質問に答えることはありません。コメントだったはずです。 (また、PHPの32ビットインストールでのみ発生するため、おそらくわずかな割合のシステムにしか影響しません)。 –

関連する問題