看,我想编写一个函数,它接受一个浮点数参数并将浮点数舍入到最接近的货币值(一个带有两个小数位的浮点数)但是如果浮点参数的零分数(即小数点后面的所有零) )然后它将float作为整数返回(或者即截断小数部分,因为它们都是零都是零.).
但是,我发现我无法弄清楚如何确定一个分数是否具有零分数.我不知道是否有PHP函数已经这样做了.我看了.我能想到的最好的方法是先将浮点数转换为整数,然后再从浮点数中减去整数部分,然后检查差值是否等于零.
Sur*_*ams 14
if($value == round($value))
{
//no decimal, go ahead and truncate.
}
Run Code Online (Sandbox Code Playgroud)
此示例将值与自身进行比较,舍入为0位小数.如果四舍五入的值与该值相同,则您没有小数部分.干净利落.
Kin*_*nch 10
一个小技巧与PHP类型杂耍能力
if ($a == (int) $a) {
// $a has a zero fraction value
}
Run Code Online (Sandbox Code Playgroud)