php 怎么在二维数组中查看一个值是否存在

搜索数据库得到结果 num字段下的值 ,我用 in_array("33"$row[num]) 查不到,会出错。 这样的二维数组要怎么查?

php 二维数组验证一个值是否存在,参考代码如下

$arr = array(  
   array('a', 'b'),  
   array('c', 'd')  
);  
   
in_array('a', $arr); // æ­¤æ—¶è¿”回的永远都是 false  
deep_in_array('a', $arr); // æ­¤æ—¶è¿”回 true å€¼  
   
function deep_in_array($value, $array) {   
    foreach($array as $item) {   
        if(!is_array($item)) {   
            if ($item == $value) {  
                return true;  
            } else {  
                continue;   
            }  
        }   
           
        if(in_array($value, $item)) {  
            return true;      
        } else if(deep_in_array($value, $item)) {  
            return true;      
        }  
    }   
    return false;   
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-01-26
in_array('33',$row[num]); //区分大小写与空格
array_filter($row); //去除空值追问

in_array查不到。。好像只能查一维的

追答

那就循环下
foreach ($arr as $key=>$val){
……
}

本回答被提问者采纳
第2个回答  2012-02-17
换个函数,用 array_search

$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');

$key = array_search('green', $array); // $key = 2;追问

array_search只能查一维数组

相似回答