質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

162閲覧

continue文が指す「以後」「残りの処理」が指す箇所がわからない。

takub

総合スコア15

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2018/09/09 14:54

●質問
continueの説明にある「以後」「残り」の処理をスキップするという
「以後」は位置的に下にある命令文をスキップするという意味でしょうか?
それとも、処理の流れとして「以後」を指すのでしょうか?

continue 文について公式引用:
continue は、ループ構造において現在の繰り返しループ の残りの処理をスキップし、条件式を評価した後に 次の繰り返しの最初から実行を続けるために使用されます。

●質問の意図・詳細

PHP

1for($i = 1; $i <= 10; $i++){ 2 if($i % 3 == 0 ){ 3 continue; 4} 5echo $i; 6} 7//結果3の倍数以外が(1.2.4.5.7.8.10)表示。

上記の場合、for構文の処理の流れとして
1~5の処理の流れになると思います。

1.初期化  → $i = 1
2.条件式の評価trueならループ → $i <= 10
3.[3]で割り切れる場合、以後の処理をスキップする 

→ if($i% 3 == 0 ){
continue;
}

4.$iをで表示 →echo $i;
5.$i に1を足す。 →$i++

continueが以後の処理をスキップするなら、

5.$i に1を足す。 →$i++

という処理もスキップされてしまい、3の時点から更新されないんじゃないかと思うのですが。

continueの「以後」は位置的にに「continueよりも下にある命令文」を指すのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

forcontinueは、for(式1; 式2; 式3)式3を実行する時点にジャンプします。その後、式2が実行されてループ継続条件を判断します。

whilecontinueは、while(式)を実行してループ継続条件を判断するところにジャンプします。

投稿2018/09/09 15:08

otn

総合スコア84423

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takub

2018/09/09 15:21

度々、誠にありがとうございます。 理解させていただきました。 構文によってジャンプする箇所が違うのですね。 わかりやすい説明をありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問