「$i % 3」という表現について教えて下さい

i が変化したときに $i % 3 がどうなるか考えてみるといいでしょう。
2021年12月1日
ユーザー

%は指定された数値で割ったときの余りを表示してくれる演算子だと認識しています。
その上で、if()の条件を以下のように変えてみたときに疑問がわきました。
ターミナルの結果に対し、内部でなにが起こったのか曖昧なので詳細を教えていただきたいです。

for ($i = 1; $i <= 10; $i++) {
  if ($i % 3) {
    continue;
  }
  echo $i . PHP_EOL;
}

具体的な質問です。

私のコードはお手本コードの$i % 3 === 0と異なり、
「余りがいくつだったら」という指定をしていません。
それでもエラーなくターミナルに表示されたということは、無事処理が完了したと言えますよね。

ただし「$iを 3 で割る」場合、
その余りは$iにどんな数値が入るかによって変わるので、一様ではないです。

では、私が指定した$i % 3という条件は、
$iを 3 で割ったときになんらかの余りが出たら」という意味になっているということでしょうか。

余りの数値を指定していないのに、エラーなく処理が完了したことを疑問に思っています。
いったい中でなにが起きているのだろう、、、と感じていますので、
なにかヒントをいただけると幸いです。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?

このレッスンの質問と回答(3)