プロのクリエイターがホームページの作成や運用ノウハウについて無料公開!

ホームページTIPS
facebook twitter mail

このサイトでは、ホームページ制作運用に関する各種の情報を無料公開しています。
内容についてのご意見・ご指摘については、フォームからお知らせいただけば、適宜変更させていただきます。

phpに関するTips

2017.7.26更新

php

【 php基礎編 】while 条件分岐を使った「ループ処理」をしっかり理解する!

Attention!

ループ処理のプログラムはwebサイトでの使用頻度も高く、きちんと理解することがとても重要です。構文の書き方はいくつか種類があるのですが、ここでは基本となる「while」を使ったループ処理について説明します。ループ処理はどの構文であっても、条件分岐が「真」か「偽」か?という考え方がベースになっています。もし条件分岐についてよく分からない方は、いきなりループ処理を覚えるのではなく、条件分岐の考え方をしっかり身につけてから、本ページを読み込む事をお勧めします。

1while は、繰り返し処理するという構文です。
<?php

 // whileを使ったループ処理

 $i = 0 ;


  while ($i < 10){   // while(条件) は、条件が「真」になる場合に処理を繰り返す、

  	echo $i ;

  	$i++ ;			 // ++は単項演算子、値に1をプラスする

  }

?>

コード例を1つ1つ説明しましょう。まず変数「$i」には数字の「0」が代入されています。「while(条件)」は条件に合致する場合(条件判定が真になる場合)、{ }の処理を繰り返すという構文です。ここでは「$iが10未満の場合、$iを表示する」という処理になりますね。「$i++」の++は単項演算子と呼ばれ、値に1をプラスする(1つ増やす)という処理になります。つまりこのwhile構文は「$iが10未満だった場合に、$iを表示して、$iの値に1をプラスする」処理を繰り返す、という意味になります。よって表示は以下のようになります。

 

ループ処理結果

2while構文のループ処理を図解で説明します。

							
							

なぜ数字が0から9までしか表示されないの?と意味が良くわからない方は、次の図解を見てみましょう。まず「while ($i < 10)」が条件指定になりますね。while構文では( 条件 )に合致している場合に { } の処理を繰り返し実行する、と先に説明しました。処理の流れとしては、最初の0を表示した後、$i++で値に1を足していますので、次は1を表示してさらに1を足し・・・という事を値が9になるまで繰り返し実行しているのです。これが「ループ処理」です。そして処理を10回繰り返した後は、$iの値は「10」になってます。これは「while ($i < 10)」の条件には合致しません。条件判定でいう「偽」となるので、ここで処理が停止する=ループを抜ける、という事になります。

 

roop

 

よってループ処理を実行した結果は、このような表示になります。

 

ループ処理結果

3言葉で要約すると理解し易いかもしれません。

							
							

言葉でまとめると、

「10未満の場合に表示する、という条件を指定して、値を1づつ増やしながら繰り返し表示させ続け、値が10になったら処理をストップさせる。」

という構文なのです。どうでしょう?理解ができましたか?

 

このループ処理は、webサイトのブログプログラムなどで頻繁に使用されています。実際にはこんな構文が使われています。

「記事がある場合には、1つ1つ繰り返し表示させ続けて、タイトル一覧として並べる」

「指定日までの記事を、1つ1つ繰り返し表示させ続けて、検索結果として表示させる」

 

ループ処理の使われ方について、なんとなくイメージできましたか?

最初は難しいと感じたり、ピンと来ないかもしれませんが、大事なのはこのページで紹介した基本の構文です。構文のつくりが理解できれば、長くて複雑なコードであっても1つ1つ読み解いていけると思いますので、ループ処理の基本構文「while(条件) { } 」の形をしっかり覚えておきましょう。

トップへ