私は3つの配列を持っています.1つは低い値の重みを持ち、もう1つは高い値の重みを持ち、3番目はその重み「ブラケット」の実際の値です:
Array 1
(
[0] => 0.00
[1] => 2.00
[2] => 5.00
[3] => 20.00
[4] => 50.00
[5] => 100.00
)
Array 2
(
[0] => 1.90
[1] => 4.90
[2] => 20.00
[3] => 50.00
[4] => 100.00
)
Array 3
(
[0] => 30
[1] => 50
[2] => 100
[3] => 200
[4] => 500
[5] => 1000
)
配列 3 から対応する KEY を見つける必要があります。ここで、値 (5.30 としましょう) は配列 1 の値よりも大きく、配列 2 の対応する値よりも小さい (5 より大きく 20 より小さい)。この例の結果は、配列 3 から [2] の配列キーと 100 の値を生成します。
各配列をループしてキーを見つけることもできますが、何らかの方法で配列をマージすることにより、これを行うより高速な方法があることを願っています。
[2] =>
[0] => 5.00
[1] => 20.00
[2] => 100
...そして、値が [0] と [1] の間にあるかどうかを確認し、そうであれば [2] を返しますその「ブラケット」の値は [2][2] です。
サンプルコードを使用した結合配列:
Array
(
[0] => Array
(
[0] => 0.00
[1] => 1.90
[2] => 30
)
[1] => Array
(
[0] => 2.00
[1] => 4.90
[2] => 50
)
[2] => Array
(
[0] => 5.00
[1] => 20.00
[2] => 100
)
[3] => Array
(
[0] => 20.00
[1] => 50.00
[2] => 200
)
[4] => Array
(
[0] => 50.00
[1] => 100.00
[2] => 500
)
[5] => Array
(
[0] => 100.00
[1] =>
[2] => 100
)
)