PHPに次のような2つの複雑なネストされた配列があるとします。
$a = array(
"x" => array(4, 5, 6),
"y" => array("z" => "foo", "q" => "bar")
);
$b = array(
"y" => array("q" => "bar", "z" => "foo"),
"x" => array(4, 5, 6)
);
(この場合、それらは異なるソースからのデコードされたJSONデータです)。コンテンツは任意にネストできますが、循環参照は含まれないと想定します。
キーの順序を無視して、それらが等しいかどうかを確認する最も簡単な方法は何ですか?たとえば、上記の2つは同等に比較する必要があります。しかし、もしそうならなかっ$b["x"]
たarray(4, 6, 5)
でしょう。
再帰的ksort
に結果を比較することはできますが、どちらのオペランドも変更したくありません。これは、私が知らない単純な1行のソリューションを持っている可能性があるもののようです。何かありますか?