概要
閲覧数:2488
投稿日:2013-09-16
更新日:2014-05-16
多次元配列キーを、多次元配列内にある「特定キーの値」へ変更
例
・特定キー … "id"指定
・特定キー"id"の値 … 1、2、5
コード
function getItems(){ $items = array();//配列の初期化 $items[] = array( "id" => 1, "name" => "JavaScript", "menu1" => 1, "impression" => "分からない", ); $items[] = array( "id" => 2, "name" => "PHP", "menu1" => 2, "impression" => "JavaScriptよりは、分かる", ); $items[] = array( "id" => 5, "name" => "Ruby", "menu1" => 2, "impression" => "分かるはずがない", ); // 配列のキーを「"id"の値」へ変更 $return_items = array();//新しい配列return_itemsを作成 foreach($items as $key => $val){ $return_items[$val["id"]] = $val;//foreachで回して行って、$itemsの2次元目連想配列キーの"id"を、新しい配列return_itemsのキーとして(例えば5)、そこへ$itemsの2次元目連想配列の値を代入。結果的に、配列のキーが、「"id"の値」へと上書き変更される } return $return_items; } $data = getItems(); print_r($data);
結果
Array ( [1] => Array ( [id] => 1 [name] => JavaScript [menu1] => 1 [impression] => 分からない ) [2] => Array ( [id] => 2 [name] => PHP [menu1] => 2 [impression] => JavaScriptよりは、分かる ) [5] => Array ( [id] => 5 [name] => Ruby [menu1] => 2 [impression] => 分かるはずがない ) )