• ベストアンサー

phpでcontinueはなぜ1文字スキップするん

phpでcontinueはなぜ1文字スキップするんでしょうか?スキップするならcontinueじゃなくてskipですよね?3になったらskip <?php for($i = 0; $i <= 4; $i ++){ if($i == 3) { continue; } echo $i."\n"; } ?>

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

>phpでcontinueはなぜ1文字スキップするんでしょうか? 回答「してません。」 もし「1文字スキップ」なのであれば、 echo $i."\n"; echo "ここにもきたよ~\n"; で実験すればわかりますが。「その後の行にそもそも来ていない」 つまりスキップではなく、FOR文そのものに戻ったと わかると思います。 だから、continue=続けるという命令になっているのです。 こういう時は、トレースをしてみてください。 continueにブレイクポイントをひっかけて、 「この次の処理がどこに行くか?」を トレースすることで、処理の流れが1発でわかりますよ。 #結構この手のツールが、面倒だとか覚えにくい、  ものにより有料だとかで、避ける方が多いですが、  ちゃんとしたツールを使って理解を早めることで、  それらを使って利益を得る速度が上がる  =つまり、お金はむしろ増える。  ってことを、考えない方は多いですが、  もし、覚えたい!と強く思う場合は、  いいツールを使うことで、無駄な時間(つまり損失)を  抑えて、自分に入ってくるお金を増やす確率は上がりますよ。 #今回の質問が、趣味なのか将来の為の準備なのかわからないので、  もちろん、個人の判断ですが。

okwaveokw
質問者

お礼

お示しの画像はなぜ0から始まってないんですか? さらに、0からではなく、ここに来ていないの下から反映されてますか? プログラムは順次読み込み処理ですよね

okwaveokw
質問者

補足

あと、$i: 3というのはなんですか?

その他の回答 (1)

  • t_ohta
  • ベストアンサー率38% (5241/13712)
回答No.2

continue は1文字スキップすると言う意味ではありません。 ループ構造の制御を行う命令は2種類あり「brake」と「continue」の2種類があり、「brake」はループ構造を中断し抜け出すと言う意味で、「continue」はループ内の残りの処理をスキップして次のループに移行すると言う意味です。 単純にスキップするだけでは無く、次のループ処理を継続するので「continue」と言う単語が使われています。

okwaveokw
質問者

お礼

ありがとうございます

関連するQ&A