Heim  >  Artikel  >  Backend-Entwicklung  >  PHP处理金额(代码实例)

PHP处理金额(代码实例)

PHPz
PHPzOriginal
2016-07-20 11:07:391422Durchsuche

涉及到金额的代码,一定要谨慎处理。刚好最近做了相关的功能,下面大概说一下。【推荐教程: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);
}


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn