本文是关于PHP的知识教程分享,因为PHP一旦进行金额的互相转化,就非常容易发生错误,所以有了这篇文章,下面主要给大家分享一下php 元转分的错误示范,并附上实例代码,一起来看一下。
实例代码讲解PHP金额转化容易出现的错误
php 元转分发生错误最主要的原因就是内部是浮点数变量,错误示范如下:
$price=20.08;
echo yuan_to_fen($price);
function yuan_to_fen($price)
{
return intval(100 * $price);
}
function yuan_to_fen2($price)
{
return floor(100 * $price);
}
function yuan_to_fen3($price)
{
return (int)(100 * $price);
}
正确示范:
$price=20.08;
echo yuan_to_fen($price);
function yuan_to_fen($price)
{
return round(100 * $price);
}
汇总一下:
<?php
$a = 20.08;
$b = yuan_to_fen1($a);
$c = yuan_to_fen2($a);
$d = yuan_to_fen3($a);
$e = yuan_to_fen4($a);
$x = yuan_to_fen31($a);
$y = yuan_to_fen32($a);
$z = yuan_to_fen33($a);
echo('价格=' . $b . "\n");//2007
echo('价格2=' . $c . "\n");//2007
echo('价格3=' . $d . "\n");//2007
echo('价格4=' . $e . "\n");//2008
echo('方法31=' . $x . "\n");//2008
echo('方法32=' . $y . "\n");//2008
echo('方法33=' . $z . "\n");//2008
function yuan_to_fen1($price)
{
return intval(100 * $price);
}
function yuan_to_fen2($price)
{
return floor(100 * $price);
}
function yuan_to_fen3($price)
{
return (int)(100 * $price);
}
function yuan_to_fen4($price)
{
return 100 * $price;
}
function yuan_to_fen31($price)
{
return intval(strval(100 * $price));
}
function yuan_to_fen32($price)
{
//返回浮点数。
return round(100 * $price);
}
function yuan_to_fen33($price)
{
//返回整型,比较推荐这种。
return intval(round(100 * $price));
}
关于PHP元转分发生错误的错误示范就讲解到这里,翼速应用平台内有更多相关资讯,欢迎查阅!
我来说两句