"); //-->
我们参加工作后就会面临交社保和个人所得税,那么个人所得税用PHP如何计算呢?本篇文章扣丁学堂PHP在线学习小编和大家分享一下PHP如何计算个人所得税,对此感兴趣的小伙伴就一起来了解一下吧。

今天我们主要介绍PHP计算个人所得税示例【不使用速算扣除数】,文章中会结合实例形式分析PHP自定义函数不使用速算扣除数计算个人所得税的相关操作技巧,涉及数组遍历、数值运算的简单使用,有需要的小伙伴就和小编一起来看一下吧。
PHP和JS有相同之处,知道PHP计算个人所得税的方法以后,也可以同理写出JS代码个算个人所得税。不同之处在于,javascript没有foreach()这样的语法结构,不过随着时代的变迁,现代浏览器中JS ECMASCRIPT 5也开始支持forEach()方法了。
<?php
/* PHP不使用速算扣除数计算个人所得税
* @author 吴先成
* @param float $salary 含税收入金额
* @param float $deduction 保险等应当扣除的金额 默认值为0
* @param float $threshold 起征金额 默认值为3500
* @return float | false 返回值为应缴税金额 参数错误时返回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);
//运行结果:762.22
?>专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
通过实时健康监测预防故障:一项proteanTecs创新
36V电动车充电器原理图
78K0微波炉解决方案
乐声2188彩电保护电路
研调上修本季DRAM涨幅 上看23%
[原创]MFC5272_BOOTROM开发笔记
应用的RF4CE协议的射频遥控器系统
输出电压稳定的机动车调压器
LED字形码发生器
LED显示驱动芯片MAX6952在图形显示方面的应用
无线遥控LED灯参考设计
新初创公司Substrate希望与ASML竞争
从系统设计到源代码:Tobias Kästner 谈 Zephyr
电动车有刷控制器原理图
OpenAI 计划 2026-2027 年首次公开募股,估值高达 1T 美元
智能家居解决方案
NVIDIA GTC DC加映演出 解析黄仁勋「一石三鸟」大计
全球IT产业地图(2):美国 谁在支撑IT?
摩托车尾快闪砾霹雳灯电路
MCG12864A液晶显示模块
Microsoft 股价因对人工智能支出的担忧以及对 OpenAI 缺乏明确性而下跌
波士顿动力公司和Analog在阿联酋部署物理智能
到2026年全球IT支出将超过6万亿美元
全球IT产业地图(3):英国:政策先行
DK1.1马上出炉了。
瑞萨电子MCU直流无刷电动工具解决方案
LED显示摇棒全套方案及源程序
全球IT产业地图(1):综述篇
LED显示驱动芯片MAX6952在图形显示方面的应用2
美国本地电子产品产量增长