摘要:導(dǎo)語涉及到金額的代碼,一定要謹(jǐn)慎處理。所幸的是,金額一般不會有太多的小數(shù)。那么存儲的時(shí)候呢,一言以蔽之,以分為單位進(jìn)行存儲。格式化金額下面是格式化金額的實(shí)例格式化金額參考資料關(guān)于浮點(diǎn)數(shù)你應(yīng)該知道的浮點(diǎn)數(shù)的一個(gè)常見問題的解答。
導(dǎo)語
涉及到金額的代碼,一定要謹(jǐn)慎處理。剛好最近做了相關(guān)的功能,下面大概說一下。
存儲PHP 的浮點(diǎn)數(shù)是不能精確計(jì)算的,具體的可以看這篇文章。所幸的是,金額一般不會有太多的小數(shù)。那么存儲的時(shí)候呢,一言以蔽之,以 分 為單位進(jìn)行存儲。在 MySQL 中,以 int 類型存儲就行了(視情況選擇字段類型)。
計(jì)算上面提到以 分 為單位存儲,也就是 1 元存儲為 100 分。可以使用 PHP 內(nèi)置的 BC Math 系列函數(shù)進(jìn)行計(jì)算。日后會再寫一篇詳解。
格式化金額下面是格式化金額的實(shí)例
/** * 格式化金額 * @param $price * @return string */ public function formatPrice($price) { if (!is_numeric($price)) { $price = 0; } return number_format(bcdiv($price, 100, 2), 2); }
參考資料: 關(guān)于PHP浮點(diǎn)數(shù)你應(yīng)該知道的(All ‘bogus’ about the float in PHP)、PHP浮點(diǎn)數(shù)的一個(gè)常見問題的解答、BC Math。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/30060.html
摘要:項(xiàng)目版本微信的退款操作,通過封裝與前面支付寶退款除了配置文件,基本一樣。微信僅能每次退款筆如果想要實(shí)現(xiàn)一次退訂多筆訂單,可在客戶端通過循環(huán)來處理。 payment 項(xiàng)目2.0版本 微信的退款操作,通過封裝與前面支付寶退款除了配置文件,基本一樣。 退款代碼如下: use PaymentRefundContext; use PaymentCommonPayException; use P...
摘要:記錄下整體的設(shè)計(jì)思路以及運(yùn)營過程中的各種問題。如果錢是負(fù)數(shù)了,還得從已生成的小紅包中抽取回來將紅包放入隊(duì)列之中創(chuàng)建紅包失敗,請檢查參數(shù)生產(chǎn)和之間的隨機(jī)數(shù),但是概率不是平均的,從到方向概率逐漸加大。 公司前段時(shí)間根據(jù)業(yè)務(wù)方需求需要做一個(gè)搶紅包的活動(dòng),網(wǎng)上也搜索了很多資料。記錄下整體的設(shè)計(jì)思路以及運(yùn)營過程中的各種問題。 產(chǎn)品需求: 1.紅包支持配置開始時(shí)間、結(jié)束時(shí)間、類型(隨機(jī)金額或固定金...
摘要:記錄下整體的設(shè)計(jì)思路以及運(yùn)營過程中的各種問題。如果錢是負(fù)數(shù)了,還得從已生成的小紅包中抽取回來將紅包放入隊(duì)列之中創(chuàng)建紅包失敗,請檢查參數(shù)生產(chǎn)和之間的隨機(jī)數(shù),但是概率不是平均的,從到方向概率逐漸加大。 公司前段時(shí)間根據(jù)業(yè)務(wù)方需求需要做一個(gè)搶紅包的活動(dòng),網(wǎng)上也搜索了很多資料。記錄下整體的設(shè)計(jì)思路以及運(yùn)營過程中的各種問題。 產(chǎn)品需求: 1.紅包支持配置開始時(shí)間、結(jié)束時(shí)間、類型(隨機(jī)金額或固定金...
摘要:記錄下整體的設(shè)計(jì)思路以及運(yùn)營過程中的各種問題。如果錢是負(fù)數(shù)了,還得從已生成的小紅包中抽取回來將紅包放入隊(duì)列之中創(chuàng)建紅包失敗,請檢查參數(shù)生產(chǎn)和之間的隨機(jī)數(shù),但是概率不是平均的,從到方向概率逐漸加大。 公司前段時(shí)間根據(jù)業(yè)務(wù)方需求需要做一個(gè)搶紅包的活動(dòng),網(wǎng)上也搜索了很多資料。記錄下整體的設(shè)計(jì)思路以及運(yùn)營過程中的各種問題。 產(chǎn)品需求: 1.紅包支持配置開始時(shí)間、結(jié)束時(shí)間、類型(隨機(jī)金額或固定金...
閱讀 2373·2021-11-22 14:56
閱讀 1180·2019-08-30 15:55
閱讀 3211·2019-08-29 13:29
閱讀 1360·2019-08-26 13:56
閱讀 3500·2019-08-26 13:37
閱讀 566·2019-08-26 13:33
閱讀 3354·2019-08-26 13:33
閱讀 2235·2019-08-26 13:33