問題はこれに似ています別のより大きな配列内の配列を見つける
違いは、値を検索する代わりに、大きな配列キー ツリー内の小さな配列キー ブランチを検索していることです。
基本的に、私が探している配列キーブランチは次のとおりです。
$mission_parameters['stmt_echo']['subnodes']['exprs'][0]['expr_constfetch']['subnodes']['name']['name']['subnodes']['parts'][0] = 'true';
配列キー ツリーは、多次元であることを意味する非常に大きなツリーであり、ツリーの任意のポイントに $mission_parameters を含めることができます。
つまり、黄色い木の枝がある場合とない場合がある茶色の木の中で黄色い木の枝を見つけようとするようなものです.
分岐の最後で値を比較することも必要です。
array_intersect を見ていますが、多次元では機能しません。この種の問題を以前に解決した人はいますか?
これは、配列内で配列を検索することと同じではないことに注意してください。私は価値観を探していません。
- 編集 -
次に例を示します。
を探しています
array(
'statement' => array(
'statement2' => array(
0 => 'true',
),
),
);
次のような大きな配列の内部:
array(
'statement4' => array(
'statement' => array(
'statement2' => array(
0 => 'true',
),
'statement3' => array(
2 => 'false',
),
),
),
);
小さい配列が大きい配列への分岐のようなものであることがわかりますか。現在、大きい方の配列には小さい方のブランチが含まれていますが、他の種類の要素が含まれています。したがって、配列キーブランチを検索しています。この例では、[statement][statement2][0] = 'true'