Php 在多级关联数组中查找条目

Php 在多级关联数组中查找条目,php,multidimensional-array,associative-array,Php,Multidimensional Array,Associative Array,我试图找到一个条目是否已经存在于数组中,但该数组是多维关联数组,我无法理解它 $products = array(); $products[] = array('product_name'=>'Burton Jacket','product_id'=>'33','product_price'=>'$342'); $products[] = array('product_name'=>'Burton Bindings','product_id'=>'41','prod

我试图找到一个条目是否已经存在于数组中,但该数组是多维关联数组,我无法理解它

$products = array();
$products[] = array('product_name'=>'Burton Jacket','product_id'=>'33','product_price'=>'$342');
$products[] = array('product_name'=>'Burton Bindings','product_id'=>'41','product_price'=>'$732');
$products[] = array('product_name'=>'Bonfire Pants','product_id'=>'141','product_price'=>'$31');


if (in_array(array('product_id'=>'33'),$products)) echo 'in';
else echo 'not in';

因此,我试图找出数组中是否已包含产品id,但无法确定如何到达该位置。我觉得我很接近了。

您可以循环并找到所需的元素:

$found = false;
foreach ($products as $prod) {
    if ($prod['product_id'] == 33) {
        $found = true;
        break;
    }
}
if ($found) 
    echo 'in';
else 
    echo 'not in';

如果找到数组,是否也应该在其中使用end()函数?还是坏了?好主意。您可以将
break
添加到循环中。