我有一个这样的数组:
array(2) {
[0]=> array(1) { ["cate_id"]=> string(2) "14" }
[1]=> array(1) { ["cate_id"]=> string(2) "15" }
}
如何在不使用 for 循环的情况下检查数组中是否存在值 14?
我试过这段代码:
var_dump(in_array('14',$categoriesId));exit;
但它返回false
,我不知道为什么。
最佳答案
我想知道为什么你不需要 for
。最快的方法是序列化
您的数组并执行strpos
。
$yourarray = array('200','3012','14');
if(strpos(serialize($yourarray),14)!==false)
{
echo "value exists";
}
警告:
如果不使用循环结构,您无法保证数组中的值存在。甚至 in_array
也使用内部循环结构。因此,如注释所示,如果 $yourarray
变量中有 1414
,您将得到误报。这就是我首先强调这一点的原因。
如果您需要在数组中查找特定值。你必须循环它。
关于php - 在php中检查二维数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21302400/