最近、CakePHPのHashクラスが便利なので、積極的に使ってます。
例えば、こんな配列があったとして。
$user = array('User' => array( 0 => array('id' => 12, 'name'=>'Maekawa'), 1 => array('id' => 21, 'name'=>'Kawasaki'), 2 => array('id' => 22, 'name'=>'Sasaki'), ));
こんな感じで検索して。
$search = 'Kawasaki'; $return = Hash::extract($user, "User.{n}[name={$search}]");
見つかった配列が返される。(複数あったときは、複数の配列が返されると思われます)
array(0 => array('id' => 21, 'name'=>'Kawasaki'));
foreachで回さなくていいので使い方によっては便利です。
(ただし、思ったような取り出しをしてくれない時もありましたが)