本篇文章介绍了如何在 PHP 中对整数进行除法。
在 PHP 中有两种除整数的方法。
- 一种是通过除法/运算符;
-
另一种是通过
intdiv()
方法。
本篇文章演示了 PHP 中整数除法的两种方法。
在 PHP 中使用除法运算符 a/b 来除整数
/
在 PHP 中用作除法运算符,可以将两个数值相除。 此方法将返回除法的确切答案,可以是非整数值; 让我们看一个例子。
<?php
$dividend_number = 8;
$divisor_number = 3;
$result = $dividend_number / $divisor_number;
echo "The result for the given integer division is: ".$result;
?>
最后的结果是:
The result for the given integer division is: 2.6666666666667
如我们所见,结果不是整数类型; 要将此结果转换为整数,我们需要使用 round()
或 floor()
方法。 请参阅示例。
<?php
$dividend_number = 8;
$divisor_number = 3;
$result = $dividend_number / $divisor_number;
echo "The result for the given integer division is: ".$result."<br>";
echo "The rounded result for the given integer division is: ". round($result)."<br>";
echo "The floored result for the given integer division is: ".floor($result)."<br>";
?>
round
方法会将非整数数四舍五入为大整数,floor
方法会将其四舍五入为小整数。 查看输出:
The result for the given integer division is: 2.6666666666667
The rounded result for the given integer division is: 3
The floored result for the given integer division is: 2
使用 intdiv() 方法在 PHP 中除以整数
内置方法 intdiv()
用于整数除法,无论答案是否为十进制值,它也返回一个整数。 intdiv()
方法实际上从被除数中删除了余数,因此它可以被除以没有任何小数。
此方法的语法是:
int intdiv($dividend_number, $divisor_number)
第一个参数是被除数,第二个是除数。 该方法将返回计算出的商。
该函数将在以下情况下返回错误或异常。
-
如果传递的除数为 0,则该方法将抛出
DivisionByZeroError
异常。 - 如果被除数为PHP_INT_MIN,除数为-1,则会抛出算术错误异常。
让我们举个例子。
<?php
$dividend_number = 8;
$divisor_number = 3;
$result = intdiv( $dividend_number , $divisor_number);
echo "The result for the given integer division is: ".$result."<br>";
$dividend_number = -8;
$divisor_number = 3;
$result = intdiv( $dividend_number , $divisor_number);
echo "The result for the given integer division is: ".$result."<br>";
?>
上面的代码首先尝试使用 intdiv()
方法将两个正数相除,然后将一个负数和一个正数相除。 查看输出:
The result for the given integer division is: 2
The result for the given integer division is: -2
如我们所见,intdiv
方法将两个整数相除,如果结果为小数,该方法会将其转换为较小的整数。