Вопрос по работе с массивом

ex0t1c

Новичок
Добрый день.
Только начал практиковать PHP, вопрос наверное простой, хотя изложить мне его будет достаточно сложно)

Есть такой массив:
Array
(
[ТОПАС 5] => Array
(
[0] => 5
[1] => 220
[2] => 1
)

[ТОПАС 8] => Array
(
[0] => 8
[1] => 440
[2] => 1
)

[ТОПАС 10] => Array
(
[0] => 10
[1] => 760
[2] => 1
)

[ТОПАС 15] => Array
(
[0] => 15
[1] => 850
[2] => 1
)

[ТОПАС 5 Long] => Array
(
[0] => 5
[1] => 220
[2] => 2
)

[ТОПАС 8 Long] => Array
(
[0] => 8
[1] => 440
[2] => 2
)

)

Из этого массива выводятся ключи типа "ТОПАС 5", "ТОПАС 8" когда я ввожу значения приведенные внутри массива с ключами "ТОПАС", все отлично работает.
Но когда я ввожу ввожу например [0] => 6, [1] => 221 это приводит к пустому результату, а мне бы хотелось что бы такие передаваемые значения округлялись до следующих значений в следующем массиве. То есть если [0] => 6, [1] => 221 то они преобразовываются в [0] => 8, [1] => 440. Как бы округлялись до следующего "ТОПАСА".
Как вариант мне предложили вписать все эти условия вручную, но массив в дальнейшем будет гораздо больше.
Подскажите пожалуйста какие методы здесь можно использовать?
 

ex0t1c

Новичок
Пните меня в нужное направление пожалуйста. Вопрос еще актуален.
 

Mr.Nobody

Новичок
Если вы не можете правильно объяснить другим людям вашу проблему, значит вы не понимаете чего вы хотите.Сначала правильно сформулируйте вопрос, потом будет и правильный ответ.
 

WMix

герр M:)ller
Партнер клуба
PHP:
function getTopas($array,${передаваемые значения}){
  $tmp = array(0,0,"подделка");
  foreach($array as $topas => $data){
   if($data[0] <= ${передаваемые значения}[0]  && $data[1] <= ${передаваемые значения}[1] && $data[0] < $tmp[0]  && $data[1] < $tmp[1]){
     $tmp = array($data[0],$data[1],$topas);
   }
  }
  return $tmp[2];
}
 
Сверху