将MS Excel CEILING forumla转换为PHP

时间:2016-09-18 01:22:33

标签: php excel

我'我在最后3个小时撞到桌子上,发现很难正确匹配这些值。

我有一个Excel公式,例如。

=CEILING(8/2,0.5)

如何将其转换为PHP。我已尝试使用此link中的以下功能,但无法正常使用

function ceiling($number, $significance = 1){
    return ( is_numeric($number) && is_numeric($significance) ) ? (ceil($number/$significance)*$significance) : false;
}

我也尝试了Ceil功能。与上述相同,不能正常工作。与Excel相比,我的值不匹配。

1 个答案:

答案 0 :(得分:1)

这对你有用。不确定是否需要很多解释......它只是计算$ multiple并从那里向上舍入一个整数并乘以number参数。这将模仿Excel的上限功能。

function ceiling($number, $significance){
  $multiple   = $number / $significance;
  $remainder  = $number % $significance;

  if($remainder == 0){
    $result = $number;
  }else{
    $result = ceil($multiple) * $significance;
  }
  echo "\nceiling($number, $significance)";
  echo "\nmultiple = $multiple";
  echo "\nremainder = $remainder";
  echo "\nresult = $result\n";

  return $result;
}