开发者

Convert a string to a double - is this possible?

Just wondering in php, if it was possible to convert a string to a double. I 开发者_如何学编程am using a financial web service which provides a price as a string. I really need to process this as a double and was wondering how i would convert it

thanks


Just use floatval().

E.g.:

$var = '122.34343';
$float_value_of_var = floatval($var);
echo $float_value_of_var; // 122.34343

And in case you wonder doubleval() is just an alias for floatval().

And as the other say, in a financial application, float values are critical as these are not precise enough. E.g. adding two floats could result in something like 12.30000000001 and this error could propagate.


For arbitrary precision mathematics PHP offers the Binary Calculator which supports numbers of any size and precision, represented as strings.

$s = '1234.13';
$double = bcadd($s,'0',2);

PHP: bcadd


Use doubleval(). But be very careful about using decimals in financial transactions, and validate that user input very carefully.


Why is floatval the best option for financial comparison data? bc functions only accurately turn strings into real numbers.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜