演習課題「foreach ループで key を使う1」
右側のエディターエリアのプログラムを元に、$item の中身を「ショートソードは2000円です。\n」の形式で出力する foreach ループを書いてみましょう。
$item には key に商品名、value に価格(整数のみ)が代入されています。
下記の「期待する出力値」と同じ出力がされると正解になります。
期待する出力値
ショートソードは2000円です。
ロングソードは5000円です。
鉄の盾は1600円です。
鎖かたびらは2800円です。
演習課題「foreach ループで key を使う2」
右側のエディターエリアのプログラムを元に、2000 円以下の商品を価格が高い方から順に並べ替えて print_r で出力するプログラムを書いてみましょう。
$item には key に商品名、value に価格(整数のみ)が代入されています。
入力される値
ショートソード,1200
ロングソード,2000
ブレードソード,2500
バスタードソード,3000
木の盾,700
銅の盾,1500
鉄の盾,2200
期待する出力値
Array
(
[ロングソード] => 2000
[銅の盾] => 1500
[ショートソード] => 1200
[木の盾] => 700
)
演習課題「foreach ループで key を使う3」
標準入力で、キャラクター名,得点 の形式で複数行のデータが与えられます。
右側のエディターエリアのプログラムを元に、得点が高い順番に並び替え、print_r で出力後、勇者が何位なのか数字で出力してみましょう。
期待する出力値
Array
(
[遊び人] => 531
[魔法使い] => 523
[戦士] => 342
[勇者] => 211
[木こり] => 210
[蛇つかい] => 189
[狩人] => 112
[魔術師] => 39
)
4
#06:foreachで配列の値を取り出す2
このチャプターでは、foreach ループで、value だけでなく key も取得する方法について解説します。
foreach(配列 as キーを代入する変数 => バリューを代入する変数){
処理
}
配列は、ループさせたい配列名を記載します。
キーを代入する変数とは、配列のキーの値をループ毎に上書き代入する変数名です。
バリューを代入する変数とは、配列のバリューの値をループ毎に上書き代入する変数名です。
■ print_r() 関数
指定した配列、変数に関する情報を解りやすく出力する。
http://php.net/manual/ja/function.print-r.php