foreach文についてまとめ
【配列とは】
foreach文は配列+繰り返し(for)文のようなもの。
また、foreachは配列の要素の数だけ繰り返し処理を実行したら、ループが終了するという特徴がある。
配列はそれぞれ「0」からの番号をつけられた箱の中に1つずつ、物や値(要素)を入れてまとめられているようなイメージです。
foreachは配列の時に使えるループ処理で、配列の中に入っている要素の数分、繰り返し処理をしてくれます。構文の書き方は一次元配列と連想配列の2種類あります。
【配列のそれぞれの書き方】
・一次元配列の書き方
foreach ($array as $value) {
実行処理文
}
・連想配列の書き方
foreach ( $array as $key => $value ) {
実行処理文
}
$arrayは配列、$valueは$arrayに入っている要素、$keyは配列の番号を意味します。
【配列の取り出し方】
例題
配列$bagの中に買い物をした、卵、牛乳、トマト、キャベツ、リンゴ、オレンジを入れ、foreachでそれぞれを取り出します。
<?php
$bag = ['卵','牛乳','トマト','キャベツ','リンゴ','オレンジ'];
foreach ($bag as $value){
echo $value. '<br/>';
}
?>
表示結果
- 卵
- 牛乳
- トマト
- キャベツ
- リンゴ
- オレンジ
oreach ($bag as $value)で$bagの中に入っている要素を$valueに代入している。
echoで$valueに入っている要素を1つずつ取り出しています。一つ一つ改行したい場合は文末に'<br/>'をつける。
【連想配列の取り出し方】
連想配列は番号の代わりに名前を付けて、その箱の中に要素を入れていくイメージです。
<?php
$bag = [
'リスト1' => '卵',
'リスト2' => '牛乳',
'リスト3' => 'トマト',
'リスト4' => 'キャベツ',
'リスト5' => 'リンゴ',
'リスト6' => 'オレンジ'
];
foreach ($bag as $key => $value)
{
echo '買い物'. $key. 'つ目は、'. $value. 'です。<br/>';
}
?>
ここで箱の名前「リスト数字」が$keyに代入され、$valueに要素が代入されている。
表示結果
- 買い物リスト1つ目は、卵です。
- 買い物リスト2つ目は、牛乳です。
- 買い物リスト3つ目は、トマトです。
- 買い物リスト4つ目は、キャベツです。
- 買い物リスト5つ目は、リンゴです。
- 買い物リスト6つ目は、オレンジです。