PHP二维数组查找数据,条件查询如何实现

查找数组:
$roots = array[
0=>[ id =>1,name =>'a',state = 1],
1=>[id =>2,name =>'b'state = 1],
....此处省略8000条数据
];
查询条件 : 我想根据 Name 查找(比如说 Name = ‘a'),除了遍历有其他的方法吗?
或者有没有 现成 的函数可以使用
2、 如果我根据State 和 Name 条件同时查找,又该如何实现

2个回答

用array_filter 函数 过虑需要的数据 $result = array_filter( $roots, function($var){
return $var['name] == 'a'
});

<?php

$arr = array(
array( 'pos'=>'asdg', 'name'=>'aaa', 'age'=>12),
array( 'pos'=>'wqef', 'name'=>'bbb', 'age'=>15),
array( 'pos'=>'rgwe', 'name'=>'aaa', 'age'=>18)
);

$result = array_filter( $arr, function($var){
return $var['name'] == 'aaa' && $var['age'] == 18;
});

var_dump($result);
?>

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问