概要
閲覧数:1026
投稿日:2017-01-22
更新日:2017-01-22
配列キーを置換して返す標準関数は存在しない
※配列値ーを置換して返す標準関数は存在する
コード
function arrayKeyPrefix(array $data, $prefix = '') { $result = array(); foreach ($data as $key => $val) { $result[$prefix.$key] = $val; } return $result; } $dataAry = array("userId" => "apau4g", "screenWidth" => 1280, "screenHeight" => 1024 ); $bindValueAry = arrayKeyPrefix($dataAry,":"); print_r($bindValueAry); //★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ //修正前コード //上記と同じ結果を得られるが、キーとして有効な値を渡せないことがある場合はバグの原因になる! function addColons($data) { $fliped = array_flip($data); foreach ($fliped as $key => $value) { $fliped[$key] = ':' . $value; } $data = array_flip($fliped); return $data; } $dataAry = array("userId" => "apau4g", "screenWidth" => 1280, "screenHeight" => 1024 ); $bindValueAry = addColons($dataAry,":"); print_r($bindValueAry);
結果
Array ( [:userId] => apau4g [:screenWidth] => 1280 [:screenHeight] => 1024 )