$arr = Array( 6 => Array ( id=> 358 level=> 6 ) 4=> Array ( id => 354 level => 4 ) 5 => Array ( id => 353 level => 5 ))
順序が 5、4、6 の場合、5 と 6 のみを取ります (これは両端を取ります)
順序が 4、5、6 の場合、取りますすべて (ルールが再び変更されました) いいね あなたのような変更可能なルールでプログラムを書くことは不可能です
5、4、6。最初の値は 5 です。 5 より大きいもの (5 を含む)、つまり 5、6
4、5、6 1 つは 4。4 より大きいもの (4 を含む)、つまり 4、5、6
そして、ループするときに最初のデータのキー値を記録し、キーがより大きいかどうかを判断します。最初の値がそれより大きい場合は、
を記録するので、それがあるかどうかを心配する必要はありません7、8、9、またはそれ以上のデータです
それを確認した後、唯一のルールは、データの最初の部分のキーに従って、値を取得することです
5, 4, 6. 最初のものは 5. 5 より大きいもの (5 を含む) を取り、それは 5, 6
4, 5. 6 最初のものは 4. 4 より大きいものを取ります ( 4) を含む、つまり 4、5、6
次に、ループするときに、最初のデータのキーの値を記録し、毎回キーが最初の値より大きいかどうかを判断します。大きい場合は、
が最初の値より大きい場合は、心配する必要はありません。 4,6,5、4,6 だけが取られます。パターンはないようです
次に、考えられる値の状況をすべてリストアップして、array_intersect_key