Maison  >  Article  >  développement back-end  >  Comment calculer l'impôt sur le revenu des personnes physiques en PHP

Comment calculer l'impôt sur le revenu des personnes physiques en PHP

小云云
小云云original
2018-03-28 10:24:053467parcourir

Cet article présente principalement PHP pour calculer l'impôt sur le revenu des personnes physiques et analyse les compétences opérationnelles pertinentes des fonctions personnalisées PHP pour calculer l'impôt sur le revenu des personnes physiques sans utiliser de déductions de calcul rapides sous forme d'exemples, impliquant l'utilisation simple du parcours de tableau et des opérations numériques. . J'espère que cela aide tout le monde.

PHP et JS ont des similitudes. Après avoir appris comment PHP calcule l'impôt sur le revenu des personnes physiques, vous pouvez également écrire du code JS pour calculer l'impôt sur le revenu des personnes physiques de la même manière. La différence est que JavaScript n'a pas de structure grammaticale comme foreach(), mais avec l'évolution des temps, JS ECMASCRIPT 5 dans les navigateurs modernes a également commencé à prendre en charge la méthode 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
?>

Recommandations associées :

Mise en œuvre Javascript du calcul de l'impôt sur le revenu des personnes physiques_compétences Javascript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn