首頁  >  文章  >  後端開發  >  PHP处理金额(代码实例)

PHP处理金额(代码实例)

PHPz
PHPz原創
2016-07-20 11:07:391422瀏覽

涉及到金额的代码,一定要谨慎处理。刚好最近做了相关的功能,下面大概说一下。【推荐教程:php视频教程

f1c6296d71b1b2db27e3886d65efbcab_1200x500.jpg

   PHP 的浮点数是不能精确计算的,具体的可以看这篇文章。所幸的是,金额一般不会有太多的小数。那么存储的时候呢,一言以蔽之,以 分 为单位进行存储。在 MySQL 中,以 int 类型存储就行了(视情况选择字段类型)。

计算:

上面提到以 分 为单位存储,也就是 1 元存储为 100 分。可以使用 PHP 内置的 BC Math 系列函数进行计算。日后会再写一篇详解。

格式化金额

下面是格式化金额的实例

/**
* 格式化金额
* @param $price
* @return string
*/
public function formatPrice($price)
{
if (!is_numeric($price)) {
$price = 0;
}
return number_format(bcdiv($price, 100, 2), 2);
}


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn