php 配列で指定した添え字の前に値を追加

2012/03/19
「array("aaa"=>"トマト", "bbb"=>"みかん", "ddd"=>"カジカ")」を
「array("aaa"=>"トマト", "bbb"=>"みかん", "ccc"=>"マトン", "ddd"=>"カジカ")」
としたい。

  1. /**
  2. * 指定したキーの前に値を追加:オリジナル配列・キー・追加配列
  3. * @param array $ary  元の配列
  4. * @param string $key  追加したい箇所(このキーの前に追加)
  5. * @param array $addAry 追加するデータ(0:キー, 1:値)
  6. */
  7. function array_add_selectkey($ary, $key, $addAry)
  8. {
  9.  $temp = array();
  10.  foreach ($ary as $k=>$v)
  11.  {
  12.   if ($key == $k)
  13.   {
  14.    $temp[$addAry[0]] = $addAry[1];
  15.   }
  16.   $temp[$k] = $v;
  17.  }
  18.  return $temp;
  19. }
  20.  
  21. $tmp = array("aaa"=>"トマト", "bbb"=>"みかん", "ddd"=>"カジカ");
  22. $ary = array_add_selectkey($tmp, "ddd", array("ccc", "マトン"));

もっと良いやり方があるとは思うんだけど…。
内容としては、配列を回して対象の添え字になったら値を追加って感じ。

新着(ニュース関連以外)

2018-07-26
年賀状で「新春」とか書くけど・・・何故なんだろうと8月を目前にした今、疑問に思った。
2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい