百分号在PHP中意味着什么?

这到底是什么意思?

$number = ( 3 - 2 + 7 ) % 7; 

如上所述,它是模数运算符,它返回除法运算的其余部分。

例子: 3%5返回3,因为3除以5是0,余数是3。

5 % 10返回5,出于同样的原因,10进入5个零次,余下的5次。

10 % 5返回0,因为10除以5正好是2次,没有余数。

在你发布的例子中, (3 - 2 + 7)为8,给你8 % 7 ,所以$number将是1 ,这是8/7的余数。

这是模数运算符 :

$a % $b = $a % $b余数除以$b

它通常被用来获得“每N个元素一个元素”。 例如,每三个元素只能得到一个元素:

 for ($i=0 ; $i<10 ; $i++) { if ($i % 3 === 0) { echo $i . '<br />'; } } 

哪获得这个输出:

 0 3 6 9 

(是的,好的, $i+=3就可以做到,但这只是一个演示。)

这是模数运算符。 在语句$a % $b ,结果是$a除以$b的余数

使用这个操作符,可以很容易地计算出月份中的奇数或偶数,例如,如果需要计划或某事:

 <?php echo (date(j) % 2 == 0) ? 'Today is even date' : 'Today is odd date'; ?> 

既然有那么多人说“模数find了除数的余数”,那么让我们先来定义一个余数是多less。

在math中,其余部分是执行一些计算后的“剩余”量。 在算术运算中,其余部分是将整数除以另一整数以产生整数商(整数除法)的“剩余”整数。

请参阅: http : //en.wikipedia.org/wiki/Remainder

因此,模数是一种简单的方法:“除法后剩下多less除数?”

要使用OP的(3 - 2 + 7) = 8 % 7 = 1

它可以分解为:

 (3 - 2 + 7) = 8 8 / 7 = 1.143 #Rounded up .143 * 7 = 1.001 #Which results in an integer of 1 

7点可以进入8点1点,剩下7点14点

这里的所有都是它的。 我希望这有助于简化模数的工作方式。


使用不同除数21的其他示例

21 % 3 = 0分解21 % 3 = 0

 21 / 3 = 7.0 3 * 0 = 0 

(3可以用3剩余的0进入21 7次)

21 % 6 = 3分解21 % 6 = 3

 21 / 6 = 3.5 .5 * 6 = 3 

(6次可以进入21次3次,剩余6次)

21 % 8 = 5分解21 % 8 = 5

 21 / 8 = 2.625 .625 * 8 = 5 

(8个可以用8个剩余的625个进入21 2次)

%表示模量。

模数是math中“余数分裂”的奇特名称。

 (numerator) mod (denominator) = (remainder) 

在PHP中

 <?php $n = 13; $d = 7 $r = "$n % $d"; echo "$r is ($n mod $d)."; ?> 

在这种情况下,这个脚本会回显

 6 is (13 mod 7). 

其中$r是余数(答案), $n是分子, $d是分母。 模运算符由于其作为单向函数的特殊特性而常用于公钥密码学 。