一、簡介
我要實現(xiàn)這樣一個表達(dá)式
z=總獎金
n=總名數(shù)
i=自己的排民
((n-i+1)/(1+2+3+…n))*z
這是一個分配獎金的式子。我試著用php的bc函數(shù)進(jìn)行操作發(fā)現(xiàn)以下兩種寫法得出不一樣的結(jié)果
表達(dá)式1: a r r [ arr[ arr[i]=bcmul(bcdiv((51- i ) , i), i),num,2), r e w a r d [ ′ L e a d e r b o a r d ′ ] , 0 ) ; 表 達(dá) 式 2 : reward['Leaderboard'],0); 表達(dá)式2: reward[′Leaderboard′],0);表達(dá)式2:arr[ i ] = b c m u l ( b c d i v ( i]=bcmul(bcdiv( i]=bcmul(bcdiv(reward[‘Leaderboard'], n u m , 2 ) , ( 51 − num,2),(51- num,2),(51−i),0);
二、現(xiàn)象
1.我代碼
//根據(jù)時間計算排名獎勵
public function calculateTheReward($dateStr="2021-04-12 00:00:00"){
$reward=Login::table('dailyReward')->where(['dateStr'=>$dateStr])->find()->toArray();
$arr=[];
$num=1275;
for ($i=1;$i=50;$i++){
$arr[$i]=bcmul(bcdiv($reward['Leaderboard'],$num,2),(51-$i),0);//bcmul(bcdiv((51-$i),$num,2),$reward['Leaderboard'],0);
}
print_r($arr);die;
}
用表達(dá)式1得出結(jié)果:
![](/d/20211017/37ee160b086d38ea8b757793211ae2b1.gif)
用表達(dá)式2得出以下結(jié)果:
![](/d/20211017/e3d943bed112ba1017c4c9b6ceb73483.gif)
到此這篇關(guān)于php bcdiv和bcmul 函數(shù)的怪異現(xiàn)象的文章就介紹到這了,更多相關(guān)php bcdiv和bcmul 函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 正則表達(dá)式之零寬斷言實例詳解【基于PHP】
- 詳解各種PHP函數(shù)漏洞
- PHP危險函數(shù)禁用深入詳解
- php中使用array_filter()函數(shù)過濾數(shù)組實例講解
- php array_map()函數(shù)實例用法
- PHP執(zhí)行系統(tǒng)命令函數(shù)實例講解
- PHP超級全局變量、魔術(shù)變量和魔術(shù)函數(shù)匯總整理
- python如何調(diào)用php文件中的函數(shù)詳解
- PHP中斷言函數(shù)的使用詳解