PHP

【PHP】配列のデータを全て取得する方法(for,foreach)

本記事では、PHPでfor文・foreach文を使って配列のデータを全て取得する方法について解説しています。

PHPの学習におすすめ参考書
気づけばプロ並みPHP 改訂版–ゼロから作れる人になる!

本書情報
著者谷藤 賢一
発売日2017/3/6
ページ数331ページ
Kindle版
レビュー
(Amazon)
(168件)

参考書が苦手な人はUdemyの動画がおすすめ
ちゃんと学ぶ、PHP+MySQL(MariaDB)入門講座

動画情報
作成者たにぐち まこと
学習時間11時間
受講者数24,526人
レビュー (4,518件)
動画の詳細はこちら

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 =>で添字の値を取得していますが不要であれば省略することが可能です。

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村