PHP

【PHPの基礎】while文(繰り返し処理)をマスターしよう!

本日解決できる内容!

✔️while文とは何か

✔️while文の使い方

✔️while文の応用

今回はwhile文についてご説明したいと思います。

for文と共によく使われる構文なので是非マスターしましょう!

独学がつらくなった方は下記をご覧ください!

>>【初心者必見!】無料体験ができるプログラミングスクールをご紹介!

【基礎編】while文とは

while文とは、よくループ構文とも言われ、繰り返しの処理を行う際に使用します。

例えば下記のような書き方をします。

while (条件式) {
    繰り返し行う処理
}

【基礎編】while文の書き方

実際にコードを打ち込んで実装してみましょう!

<?php
    $age = 27;
    while ($age <= 30) {
        echo $age.'years old'.'<br>';
        $age ++;
    }
?>

結果は下記の通りです。

$ageが「30」になるまで繰り返し処理を行うコードです。

$ageのスタートが「27」である為、はじめは「27years old」がechoされます。この処理が終わったら、$ageに+1を行い、次の処理を続けます。

これが$ageが「30」になるまで繰り返される為上記の結果になります。

「$age++」は「$age=$age+1」と同じ内容で、$ageを1ずつ増やすことを意味しています。

このプログラムで条件式を$age>0にした場合、いくら数が増えても条件に当てはまることになり、無限ループという現象になります。

パソコンに負担がかかるので実行しないでください。

【応用編】while文におけるbreak処理

while文のループ中で,特定の条件になったら処理を中断したい場合には「break」という処理を行います。

while(条件式){
    //繰り返し行う処理
    break;  //現在のループ処理を終了し、whileの処理から抜ける。
}

実際にコードを打ち込んで実装してみましょう。

<?php

$count=0;
while($count<=5){
 if($count>3){
   break;
 }
  echo $count.'<br>';
  $count++;
}

?>

結果は下記の通りです。

上記のコードでは、if条件により変数のcountが「3」より大きいときは、breakによってwhileの繰り返し処理を終了する処理が行われています。出力結果をみると3からあとの数字は出力されていないことがわかります。

if文に関しては下記の記事を参考にして下さい!

>>【PHPの基礎】if文による条件分岐の使い方をマスターしよう!

【応用編】while文におけるcontinue処理

ある周回のループでの処理をスキップしたいような処理を実現したい場合はcontinueを使用します。

while(条件式){
//繰り返し行う処理1
continue;  //以降の処理をスキップして、次のループ処理を行う。
//繰り返し行う処理2
}

実際にコードを打って実行してみましょう。変数のcountの値0~5を出力するプログラムですが、変数countが3の時はその周回をスキップしたいとします。

<?php

$count=0;
while($count<5){
  $count++;
  if($count==3){
    continue;
  }
  echo $count.'<br>';
}

?>

結果は下記の通りです。

実行結果をみると、3の場合スキップされておりは出力されていませんが、while文のループが継続的におこなわれているため,4~5が出力されていることがわかります

【応用編】while文に似たその他の繰り返し構文

for文

for文とは、一定回数の処理を繰り返すことが出来る構文です。同じ処理を何度も書くことなく、簡潔に記載することができます。

for文は下記のような下記をします。

for([初期値];[条件式];[増減式]){
処理文
}

それぞれの項目の内容は、下記の通りです!

初期値:スタートの値

条件式:スタートの値をどの条件まで繰り返すか

増減式:処理文を1回実行した後に値をどのように増減させるか

実際の例を確認してみましょう!

<?php

for($i=1;$i<=5;$i++){
 echo $i;
}

?>

変数名は$iで決まっているわけではないので、何を使っても大丈夫です!

こちらは下記の内容を繰り返していることを示します。

値($i)は1からスタートする(初期値)

値($i)が5以下であれば処理文を実行する(条件式)

$iをechoする(処理文)

$iに1を足す(増減式)

実行結果は下記の通りです。

while文とfor文の大きな違いは「繰り返し処理の回数を記述するかしないか」です!

繰り返す回数が決まっておらず、特定の条件を満たすまで繰り返す場合→while文

 

繰り返す回数が決まっており、指定の回数まで繰り返す場合→ for文

for文に関しては下記の記事を参考にして下さい!

>>【PHPの基礎】for文(繰り返し処理)をマスターしよう!

foreach文

foreach文とは、配列専用の繰り返し構文です

配列の中に入っている要素の数だけ、繰り返し処理をしてくれます

書き方は下記の通りです。

foreach (配列の変数 as 各要素が格納される変数){
実行処理文
}

実際に例文をを確認してみましょう!

<?php

$array=['国語','理科','社会'];
foreach($array as $var){
  echo $var.'<br>';
}
?>

実行結果は下記の通りです。

「$array」(配列の変数)という配列の中の要素を、「$var」(各要素が格納される変数)に順番に格納していきます。

その後{}の中を実行します。ここでいうと「echo $var.’<br>’」になります。

echoは出力コード、'<br>’は段落を設けるコードです。

これを1つずつ繰り返し処理をしていくと、「国語、理科、社会」と順番に出力されます。

このようにしてforeachを使うと配列の要素を取り出すことができます

foreach文に関しては下記の記事を参考にして下さい!

>>【PHPの基礎】foreach文をマスターしよう!

独学でツラくなった方へ

まとめ

今回説明した内容

✅while文の使い方

✅while文におけるbreak処理

✅while文におけるcontinue処理

今回は以上になります。

while文はfor文と一緒に是非覚えましょう!

>>【PHPの基礎】for文(繰り返し処理)をマスターしよう!