本記事では、PHPでfor文・foreach文を使って配列のデータを全て取得する方法について解説しています。
ITエンジニア特化の転職サイト!
自社内開発求人に強い【クラウドリンク】
PHPの学習におすすめ参考書
気づけばプロ並みPHP 改訂版–ゼロから作れる人になる!
for文で配列のデータを取得する
for文で配列のデータを取得する方法は以下のとおりです。
<?php
$sushi = ['マグロ', 'サーモン', 'ハマチ'];
for($i = 0; $i < count($sushi); $i++){
print_r("<p>配列${i}番目:${sushi[$i]}</p>");
}
?>
ポイントは、条件式でcount()を使ってデータを取得する配列の長さを取得していることです。for文で使用している条件式「$i < count($sushi)」は「$i < 3」と同じ意味ですが、配列は定義されてからデータの追加や削除をすることがあるので配列の長さを使うのが一般的です。
後は配列のデータを確認するだけです。配列に代入されているデータは「配列[添字]」で取得することができます。この添字はfor文が一回ループするごとに1ずつカウントされていく変数$iを使います。
foreach文で配列のデータを取得する
foreach文で配列のデータを取得する方法は以下のとおりです。for文と比較しforeach文は簡潔に処理を書くことが出来るので、コードの可読性が上り他の開発者が処理を見ても分かりやすいのでオススメです。
<?php
$sushi = ['マグロ', 'サーモン', 'ハマチ'];
foreach($sushi as $i => $v){
print_r("<p>配列${i}番目:${v}</p>");
}
?>
foreachでは、$配列 as $変数と記述することで1回ループするごとに配列のデータを一つずつ変数に代入してくれます。そのため、条件式や配列[添字]のように取り出す必要がありません。
今回は配列の何番目にデータが入っているか確認するために、$i =>で添字の値を取得していますが不要であれば省略することが可能です。