Php 多维数组中的简单搜索
我有一个具有以下值的数组Php 多维数组中的简单搜索,php,Php,我有一个具有以下值的数组 - Array ( [id] => 3 [parent_id] => 2 [name] => Fitness ) - Array ( [id] => 4 [parent_id] => 3 [name] => Why do it) - Array ( [id] => 5 [parent_id] => 3 [name] => Nutrition) 我想按照以下几点来查询它 array_search([par
- Array ( [id] => 3 [parent_id] => 2 [name] => Fitness )
- Array ( [id] => 4 [parent_id] => 3 [name] => Why do it)
- Array ( [id] => 5 [parent_id] => 3 [name] => Nutrition)
我想按照以下几点来查询它
array_search([parent_id]='3', $array)
并返回匹配元素的列表。(在本例中,它将是id的4和5)。我不确定array\u search()
是否正确。目前可能的尝试失败。您可以使用自定义回调
$lookup_id = 3;
$results = array_filter($your_array, function($arr) use ($lookup_id) {
return $your_array['parent_id'] == $lookup_id;
});
这段代码需要>=PHP5.3,如果您有较旧的版本,则必须使用实际定义的函数(普通php函数)或使用create\u函数实现回调
<?php
function mySearchArr($key, $value, $myBigArr) {
$searchArr = array();
foreach($myBigArr as $smallArr)
if($smallArr[$key] == $value)
$searchArr[] = $smallArr;
return $searchArr
}
$matches = mySearchArr('parent_id', 3, $array);
?>
也许您可以与我们分享您的尝试?您是只想搜索父id还是它是一个给定的字段?如果您试图构建树结构,可能已经有问题了。谢谢您的提示。。。我正在搜索这个