【PHP入門】foreach文の基本を初心者向けに解説

PHPのforeach文の使い方が知りたい
foreach文で連想配列のキーと値を1つずつ取得したい

PHPでは、配列のキーや値を1つずつ簡単に取得することができるforeach文が用意されています。

この記事ではforeach文について、以下の内容で解説していきます。

  • foreach文の基本的な使い方
  • foreach文の途中で処理をスキップ、終了する方法

foreach文の基本から応用的な使い方までわかりやすく解説していますので、ぜひ参考にしてください。

※この記事ではPHPの「Version 7.1.1」で動作確認しました。

前提知識:PHPのforeach文

foreach文とは

foreach文は配列の繰り返し処理を行う場合に使用します。foreach文を使用すると、配列の要素分繰り返し処理が実行されます。

1次元配列は以下のように記述します。

foreach ($配列 as $value){
  処理
  …
}

連想配列のキーと値を指定する場合は、以下のように記述します。

foreach ($配列 as $key => $value){
  処理
  …
}

foreach文は繰り返し処理において、現在の配列の要素が$keyと$valueに代入されます。

foreach文を実行してみよう

では実際に「array.php」ファイルを作成して、foreach文を実行してみましょう。

以下の例では配列$fruitsをforeach文で配列の要素を一つずつ取得しています。


array.phpをブラウザで実行すると、以下のように表示されます。

apple
orange
melon
banana
pineapple

このように配列の要素順に繰り返し処理が行われることがわかりますね。

foreach文の基本

続けて連想配列のキーと値をforeach文で順番に取得する方法を紹介します。


実行結果:

item1の値は「apple」です。
item2の値は「orange」です。
item3の値は「melon」です。
item4の値は「banana」です。
item5の値は「pineapple」です。

連想配列の場合は「foreach($配列名 as $key => $value)」とすることで、キーと値が順番に取得されます。

以下のように指定した要素が存在したら、分岐処理に入るような処理もよく使われます。


実行結果:

1番目の値は「apple」です。
2番目の値は「orange」です。
3番目の「melon」だけは特別です。
4番目の値は「banana」です。
5番目の値は「pineapple」です。

continueとbreak

ここでは繰り返し処理のなかでループをスキップするcontinueと、ループを終了するbreakについて解説します。

continue

continueはforeach文の繰り返し処理を途中でスキップして次の繰り返し処理から始める場合に使用します。

以下のサンプルでは配列の要素が空だったら処理をスキップしています。


実行結果:

apple
orange
banana
pineapple

continueの詳しい使い方については、以下の記事でも詳しく解説しています!

break

繰り返しの途中でループ処理を終了したい場合はbreakを使用します。

以下の処理では配列の要素が空だったら処理を終了しています。


実行結果:

apple
orange

breakの詳しい使い方については、以下の記事でも詳しく解説しています!

PHPについてもっと知りたい方へ

配列はforeachを使用すれば、簡単に配列の要素を取得できることがわかりましたね!


PHPについて実はいまいちわかっていない…
もっとPHPについて詳しく知りたい!

と思っている方は以下の記事も参考にしてみてください。

まとめ

ここではforeach文の、

  • 基本的な使い方
  • ループの途中で処理をスキップ、終了する方法
  • 配列の要素を削除する方法
  • 配列の最後の要素を取得する方法
  • end関数を指定して配列の最後を取得する方法
  • 文字列の最後のカンマを削除する方法
  • 配列の最後の要素を削除する方法

などについて解説しました。foreachなどの繰り返し処理で、配列を操作するといった処理は使用頻度が高いと言えますので、この機会にぜひ覚えておきましょう。

もし、foreach文の使い方を忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

ヤマシタ

システムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。
大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。

おすすめコンテンツ

いまならレッスン期間が2週間延長!この秋、プログラミングを学ぼう

転職成功で受講料0円!あなたもプログラミングを学んでエンジニアデビュー