🦔

FOR文×配列で大量データを一気に処理しよう [PHP入門]

に公開

本記事では、FOR文と配列を組み合わせて処理する基本を学びます。
配列をループで扱えるようになると、数十個・数百個のデータでも同じコードでまとめて処理できるようになります。

お題1:買い物リストを全部出力しよう

まずはシンプルな配列を作ります。

$buy_list = ['ねぎ', 'わかめ', '卵'];

これを 1 つずつ出力するには、echo を 3 回書く方法もありますが、FOR 文を使えばもっとスマートです。

for ($i = 0; $i < 3; $i++) {
    echo $buy_list[$i] . PHP_EOL;
}

FOR文は「初期化式」「条件式」「変化式」の3つで構成されます。

for (初期化式; 条件式; 変化式) {
    // 繰り返す処理
}

この例では、

  • $i = 0 → ループ開始時のカウンタ
  • $i < 3 → 繰り返し条件
  • $i++ → 1 回ごとにインクリメント

と設定することで、添字 [0] [1] [2] を順に参照します。

結果はこうなります。

ねぎ
わかめ
卵

よくあるミス:「Undefined array key」

条件式を $i <= 3 と書くと、添字 3 を参照してしまいエラーになります。

PHP Warning: Undefined array key 3

添字は 0 から始まる ため、要素数が 3 つなら条件式は < 3 が正解です。

動的なループに改善する

配列の要素数が変わるたびに 3 の部分を修正するのは非効率です。
ここで登場するのが count() 関数です。

for ($i = 0; $i < count($buy_list); $i++) {
    echo $buy_list[$i] . PHP_EOL;
}

count() は「配列の要素数を数える」関数です。
これで要素が増減しても自動で対応できます。

リファレンスを読む習慣をつけよう

関数の詳細は公式サイトで確認できます:

PHP リファレンス > count()
https://www.php.net/manual/ja/function.count.php

リファレンスには、

  • 関数の概要
  • パラメータ(引数)
  • 戻り値
  • サンプルコード

が整理されています。
英語でも、AI 翻訳や検索を活用すれば理解できるようになります。

まとめ

  • 配列を FOR 文で処理することで、要素数に応じた繰り返し処理が可能になる
  • count() を使えば、要素数が変わっても自動でループ範囲を調整できる
  • エラーメッセージは怖くない!内容を読み取りながら慣れていこう

本記事は弊社の次プログラミング教材の要約です。

FOR と配列を組み合わせる: 100 円 PHP プログラミング 008
https://www.amazon.co.jp/dp/B0F98ZLF1M

ほかにも FOR文・配列・条件分岐などを小ステップで練習できる教材も用意しています。
興味があればそちらも覗いてみてください。

イーエスファイン IT人材育成部の書籍
https://www.amazon.co.jp/stores/author/B0F2ML4WTH

Discussion