階梯計費 PHP實現最簡潔

2021-10-21 06:36:42 字數 1132 閱讀 8028

最近遇到乙個階梯計費的case ,想了挺久的,還是沒有很好的解決方案,今天突發奇想,被我發現了。哈哈哈哈

其實當時想了配置檔案,但是沒有想到這個點子上,所以記錄下,下次專案中參考使用

<?php

// 階梯計費**

function calcmoney($n, $config)

$money += ($value['max'] - $value['min'] + 1) * $value['fee'];

}return $money;

}// 配置檔案

$config = [

['min' => 1,

'max' => 5,

'fee' => 30,],[

'min' => 6,

'max' => 10,

'fee' => 25,],[

'min' => 11,

'max' => 20,

'fee' => 20,],[

'min' => 21,

'max' => 50,

'fee' => 15,],[

'min' => 51,

'max' => 100,

'fee' => 10,],[

'min' => 101,

'max' => 500,

'fee' => 9,],[

'min' => 501,

'max' => 1000,

'fee' => 8,],[

'min' => 1001,

'max' => 2000,

'fee' => 7,],[

'min' => 2001,

'max' => 3000,

'fee' => 6,],[

'min' => 3001,

'max' => 4000,

'fee' => 5,],[

'min' => 4001,

'max' => 100000,//最大值正無窮表示盡可能大

'fee' => 4,

],];$m = calcmoney(7, $config);

echo $m;

如此乙個簡單的函式calamoney 即可簡單的計算出費用。

最簡潔的堆排序實現

public class sort heapsort arr for int i 0 i arr.length i public static void heapdown int array,int parent,int length array parent temp public static ...

PHP生成指定長度隨機數最簡潔的方法

剛才在寫簡訊驗證碼模組,需要用到指定位數的隨機數,然後網上一找發現太可怕了這麼簡單的事情竟然用了好幾十行多個迴圈巢狀 看來沒有好腦仁兒真的不適合當程式設計師。自寫了一行版本 function generate code length 4 為了便於理解,同時也為了這篇水文可以湊點字數,這是多行版 fu...

ASP實現最簡潔的多重查詢的解決方案

這個函式很關鍵 function sql a,b,sqls if b then 如果客戶端沒有提交此值,則不會產生相應的sql語句。sqls sqls and a like b end if sql sqls end function 呼叫資料庫 set conn server.createobje...