$a = array(
0 => array('one' => 1, 'two' => 2),
1 => array('one' => 3, 'two' => 4),
2 => array('one' => 5, 'two' => 2)
);
$c = count($a);
$r = array();
for ($i = 0; $i < $c; $i++)
{
if ($a[$i]['two'] == 2)
$r[] = $a[$i];
}
上記のすべてを行うには、よりクリーンな方法がありますか?鍵の値でフィルタリングするためのよりクリーンな方法はありますか?
私が行く方法は間違いありません。 'array_filter'が元の配列からキーを保持していることに注目することは重要です。 –
+1これが最良の答えです。 5.3より古いPHPの場合、無名関数は['create_function()'](http://php.net/manual/en/function.create-function.php)呼び出しで置き換えてください。古いPHPバージョンを使用している人のための通知として。 – Tadeck