導入
配列の中身を1つずつ順番に処理したい――このために PHP には foreach(フォーイーチ)という専用の繰り返しがあります。番号を気にせず、全部の要素をなめられます。
説明
foreach ($配列 as $要素) { ... } と書くと、配列の各要素が順に $要素 に入ってループします。
<?php
$fruits = ["りんご", "みかん", "ぶどう"];
foreach ($fruits as $fruit) {
echo "私は{$fruit}が好きです\n";
}
要素の数だけ、中の処理が繰り返されます。番号(添字)も一緒に使いたいときは as $キー => $値 の形にします。
<?php
$fruits = ["りんご", "みかん", "ぶどう"];
foreach ($fruits as $i => $fruit) {
echo ($i + 1) . "番目: {$fruit}\n";
}
やってみよう
$fruits の中身を増やして、その分だけ出力の行が増えることを確かめましょう。
演習
数の配列 $prices = [300, 500, 1200] を foreach で回して、合計金額を計算し表示してください。
ヒント1を見る
合計用の変数を先に用意します。$sum = 0;
ヒント2を見る
ループの中で $sum += $price;。ループの後に echo "合計: {$sum}円\n";。答えは 2000円。