使用array_search在多维数组中搜索

时间:2017-05-25 09:50:06

标签: php arrays

我有一个包含以下设置的数组:

array(
 array(
  'product_id' => 733
 ),
 array(
  'product_name' => Example
 )
)

我想检查我的数组中是否存在733,我需要使用array_search(通过googling),因为in_array不能处理m-d数组。

我的代码是:

$key = array_search( '733', array_column( $items, 'product_id' ) );

如果我var_dump $items数组,我可以看到product_id

我想检查数组中存在的特定ID,然后执行其他代码。

1 个答案:

答案 0 :(得分:1)

所以基本上你想检查你的多维数组中是否存在给定的product-id?

你可以这样做: -

<?php

$items = array(
 array(
  'product_id' => 733
 ),
 array(
  'product_name' => Example
 )
);
function searchForId($id, $array) {
   foreach ($array as $key => $val) {
       if (!empty($val['product_id']) && $val['product_id'] == $id) {
           return "true"; // or return key according to your wish
       }
   }
   return "false";
}
echo $found = searchForId(733, $items);

输出: - https://eval.in/805075

参考文献: - https://stackoverflow.com/a/6661561/4248328