1
特定のキーワードに基づいて2番目の値をソートしようとしています。この場合、そのキーワードはred
です。キーワードに基づいて2次配列の値を並べ替えます
コールバック関数のステップを調べるとうまくいくようですが、最終的な結果は変わりません。また、トップレベルのキーをアルファベット順にソートします。
$data = array(
'foo' => array(
'red', 'green'
),
'bar' => array(
'yellow', 'red'
),
);
print_r($data);
uasort($data, function($data) {
$matches = preg_grep("/red/", $data);
$rest = array_diff($data, $matches);
$order = array_merge($matches, $rest);
return $order;
});
print_r($data);