これはどういう意味ですか?
$number = ( 3 - 2 + 7 ) % 7;
除算の残りを返すのは、前述の modulus 演算子です。
例: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
で割った値。
「N要素ごとに1要素」を取得するためによく使用されます。たとえば、3つの要素ごとに1つの要素のみを取得するには:
for ($i=0 ; $i<10 ; $i++) {
if ($i % 3 === 0) {
echo $i . '<br />';
}
}
これはこの出力を取得します:
0
3
6
9
(ええ、OK、$i+=3
はトリックを行っていましたが、これは単なるデモでした。)
modulus 演算子です。ステートメント$a % $b
結果は、$a
は$b
この演算子を使用すると、スケジュールなどで必要な場合、月の奇数日または偶数日を簡単に計算できます。
<?php echo (date(j) % 2 == 0) ? 'Today is even date' : 'Today is odd date'; ?>
非常に多くの人々が「モジュラスは除数の残りを見つける」と言うので、残りが何であるかを正確に定義することから始めましょう。
数学では、残りは計算を実行した後の「残り」の量です。算術では、剰余は、整数を別の整数で除算して整数商(整数除算)を生成した後のinteger「残り」です。
参照: http://en.wikipedia.org/wiki/Remainder
モジュラスは、「除算後に除数がどれだけ残っているか」を尋ねる簡単な方法です。
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は残り7個のうち0.14個で8回1回になります
これですべてです。これがモジュラスの正確な機能を簡単にするのに役立つことを願っています.
21で異なる除数を使用する追加の例。
21 % 3 = 0
の内訳:21 / 3 = 7.0 3 * 0 = 0
(3は残り3つのうち0で7回21に入ることができる)
21 % 6 = 3
の内訳:21 / 6 = 3.5 .5 * 6 = 3
(6は残り6の.5で21に3回入ります)
21 % 8 = 5
の内訳:21 / 8 = 2.625 .625 * 8 = 5
(8は残り8個のうち0.625個で21に2回入ります)