如何使用指针在PHP中循环多数组?

如何使用指针在PHP中循环多数组?,php,arrays,loops,Php,Arrays,Loops,我有这个阵列: Array ( [0] => Array ( [price] => 32 [addition] => [year_min] => 14 [year_max] => 999 ) [1] => Array ( [price] => 16

我有这个阵列:

Array
(
    [0] => Array
        (
            [price] => 32
            [addition] => 
            [year_min] => 14
            [year_max] => 999
        )

    [1] => Array
        (
            [price] => 16
            [addition] => 1
            [year_min] => 8
            [year_max] => 13
        )

    [2] => Array
        (
            [price] => 8
            [addition] => 1
            [year_min] => 3
            [year_max] => 7
        )

    [3] => Array
        (
            [price] => 0
            [addition] => 
            [year_min] => 0
            [year_max] => 2
        )

)
我也有一个用户的年龄

我想通过编程找到用户所属的价格和附加值,但我不知道如何做到这一点。我知道这可能很简单,但好吧,现在对我来说不是:-)

有人能把我推向正确的方向吗?谢谢

$age=42;
$age = 42;
foreach ($array as $item) {
    if ($item['year_min'] <= $age && $age <= $item['year_max']) {
        print_r($item);
        break;
    }
}
foreach($数组作为$项){
如果($item['year_min'],这里有一个快速解决方案

$age = 4;
$found = array_filter($arr, function($item) use ($age){
  return $age >= $item['year_min'] && $age <= $item['year_max'];
});

print_r($found);
$age=4;
$FOND=数组过滤器($arr,函数($item)使用($age){

返回$age>=$item['year\u min']&&$age
if(ageyearMin)
您是否尝试过
foreach()
通过数组查看年龄是否在
year\u min
year\u max
范围内?是否要返回年龄介于year\u min和year\u max之间的数组元素?@Torben,是否每次返回一个且只有一个结果,或者是否有多个结果与通过的年龄匹配in?是的,对于每个年龄,始终只有一个返回结果。是的,返回年龄介于两者之间的数组元素将非常好。不确定他是否需要所有匹配项,但您的解决方案将只给他找到的第一条记录。根据提供的数组,将只有一个匹配项。正确,但这可能是一个sample子集。我会问他是否有一个且只有一个返回结果,如果有多个返回结果,我会问他什么。尝试过它,它对我的问题非常有效。真棒,谢谢:-)从问题的上下文来看,这个想法似乎是为了找到某个年龄段的人的价格。这通常会导致一个记录,否则你会有一个人有一个价格范围——尽管如果发生这种情况,我会选择最便宜的:)@NigelRen,同意,但我认为最好返回所有可能性,然后确定结果集是否不止一个。除非您确定总是有一个结果,否则我总是以某种方式编程以减少错误。非常感谢。当我返回笔记本电脑时,我将尝试所有解决方案:-)