PHP計(jì)算個(gè)人所得稅示例【不使用速算扣除數(shù)】
本文實(shí)例講述了PHP計(jì)算個(gè)人所得稅。分享給大家供大家參考,具體如下:
不使用速算扣除數(shù)計(jì)算個(gè)人所得稅,PHP自定義函數(shù)實(shí)現(xiàn)個(gè)人所得稅計(jì)算。使用速算扣除數(shù)計(jì)算個(gè)人所得稅過(guò)于簡(jiǎn)單,略過(guò)不提。
PHP和JS有相同之處,知道PHP計(jì)算個(gè)人所得稅的方法以后,也可以同理寫(xiě)出JS代碼個(gè)算個(gè)人所得稅。不同之處在于,javascript沒(méi)有foreach()
這樣的語(yǔ)法結(jié)構(gòu),不過(guò)隨著時(shí)代的變遷,現(xiàn)代瀏覽器中JS ECMASCRIPT 5也開(kāi)始支持forEach()
方法了。
<?php /* PHP不使用速算扣除數(shù)計(jì)算個(gè)人所得稅 * @author 吳先成 * @param float $salary 含稅收入金額 * @param float $deduction 保險(xiǎn)等應(yīng)當(dāng)扣除的金額 默認(rèn)值為0 * @param float $threshold 起征金額 默認(rèn)值為3500 * @return float | false 返回值為應(yīng)繳稅金額 參數(shù)錯(cuò)誤時(shí)返回false */ function getPersonalIncomeTax($salary, $deduction=0, $threshold=3500){ if(!is_numeric($salary) || !is_numeric($deduction) || !is_numeric($threshold)){ return false; } if($salary <= $threshold){ return 0; } $levels = array(1500, 4500, 9000, 35000, 55000, 80000, PHP_INT_MAX); $rates = array(0.03, 0.1, 0.2, 0.25, 0.3, 0.35, 0.45); $taxableIncome = $salary - $threshold - $deduction; $tax = 0; foreach($levels as $k => $level){ $previousLevel = isSet($levels[$k-1]) ? $levels[$k-1] : 0; if($taxableIncome <= $level){ $tax += ($taxableIncome - $previousLevel) * $rates[$k]; break; } $tax += ($level-$previousLevel) * $rates[$k]; } $tax = round($tax, 2); return $tax; } /* 示例 */ echo getPersonalIncomeTax(10086.11); //運(yùn)行結(jié)果:762.22 ?>
PS:這里再為大家推薦幾款相關(guān)的在線計(jì)算工具供大家參考:
在線個(gè)人所得稅計(jì)算器(2008版):http://tools.jb51.net/jisuanqi/tax_calc
在線個(gè)人所得稅計(jì)算工具(2011版):http://tools.jb51.net/jisuanqi/tax_jisuanqi
在線銀行按揭貸款計(jì)算器:http://tools.jb51.net/jisuanqi/anjie_calc
在線存款計(jì)算器:http://tools.jb51.net/jisuanqi/cunkuan_calc
在線投資理財(cái)計(jì)算器:http://tools.jb51.net/jisuanqi/touzilicai_calc
在線養(yǎng)老保險(xiǎn)繳存/養(yǎng)老規(guī)劃計(jì)算器:http://tools.jb51.net/jisuanqi/yanglao_calc
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《php正則表達(dá)式用法總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP實(shí)現(xiàn)的簡(jiǎn)單四則運(yùn)算計(jì)算器功能示例
- PHP基于堆棧實(shí)現(xiàn)的高級(jí)計(jì)算器功能示例
- PHP數(shù)據(jù)分析引擎計(jì)算余弦相似度算法示例
- PHP實(shí)現(xiàn)的簡(jiǎn)單在線計(jì)算器功能示例
- php編程實(shí)現(xiàn)簡(jiǎn)單的網(wǎng)頁(yè)版計(jì)算器功能示例
- PHP房貸計(jì)算器實(shí)例代碼,等額本息,等額本金
- PHP中浮點(diǎn)數(shù)計(jì)算比較及取整不準(zhǔn)確的解決方法
- PHP精確計(jì)算功能示例
- PHP中使用微秒計(jì)算腳本執(zhí)行時(shí)間例子
- PHP實(shí)現(xiàn)的分解質(zhì)因數(shù)操作示例
相關(guān)文章
PHP實(shí)現(xiàn)多維數(shù)組多字段自定義排序
這篇文章主要介紹了PHP實(shí)現(xiàn)多維數(shù)組多字段自定義排序,通過(guò)將待排序數(shù)組的各個(gè)數(shù)組的$field保存在一維數(shù)組fieldArr中,在傳入array_multisort中參與排序,相當(dāng)于對(duì)$field一維數(shù)組的排序,而后根據(jù)排序后的key重新構(gòu)建傳入的待排序數(shù)組,需要的朋友可以參考下2023-10-10php實(shí)現(xiàn)將數(shù)組或?qū)ο髮?xiě)入到文件的方法小結(jié)【三種方法】
這篇文章主要介紹了php實(shí)現(xiàn)將數(shù)組或?qū)ο髮?xiě)入到文件的方法,結(jié)合實(shí)例形式總結(jié)分析了PHP將數(shù)組或?qū)ο筠D(zhuǎn)換并寫(xiě)入文件的三種常見(jiàn)操作技巧,需要的朋友可以參考下2020-04-04PHP擴(kuò)展mcrypt實(shí)現(xiàn)的AES加密功能示例
這篇文章主要介紹了PHP擴(kuò)展mcrypt實(shí)現(xiàn)的AES加密功能,結(jié)合實(shí)例形式分析了php基于mcrypt實(shí)現(xiàn)AES加密的相關(guān)操作技巧,需要的朋友可以參考下2019-01-01PHP實(shí)現(xiàn)Snowflake生成分布式唯一ID的方法示例
這篇文章主要給大家介紹了關(guān)于PHP實(shí)現(xiàn)Snowflake生成分布式唯一ID的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08PHP實(shí)現(xiàn)抓取百度搜索結(jié)果頁(yè)面【相關(guān)搜索詞】并存儲(chǔ)到txt文件示例
這篇文章主要介紹了PHP實(shí)現(xiàn)抓取百度搜索結(jié)果頁(yè)面【相關(guān)搜索詞】并存儲(chǔ)到txt文件,涉及php基于curl的頁(yè)面抓取及正則匹配相關(guān)操作技巧,需要的朋友可以參考下2018-07-07