简体   繁体   English

PHP in_array通过键查找值

[英]Php in_array find value by key

I have an array like this: 我有一个像这样的数组:

$array = Array ( [0] => Array ( [id] => 6 ) [1] => Array ( [id] => 6 ) [2] => Array ( [id] => 123 ) [3] => Array ( [id] => 123 ) ) 

In a cycle I use the function 在一个周期中我使用该功能

$id = 123;

if (in_array($id, $array)) {
   echo "found!!";
   }
   else
   {               
   echo "not found";
   }

But doesn't works; 但是没有用; Why? 为什么?

It will not work because $array contains array s as values. 因为$array包含array作为值,所以它将不起作用。 in_array alone will not help here. 单独使用in_array将无济于事。 Use array_column & in_array together. 一起使用array_columnin_array

in_array($id, array_column($array, 'id'))

Just try 你试一试

if (array_search($id,$a)) {
   echo "Found";
} else {
   echo "Not Found"
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM