在一个 JSON 文件中,我有多个名称为type
的keys
,它们的values
numeric
。我想做的是检查是否存在确切的number
。问题是,如果有两个values
具有相同的digit
它向我显示两个 TRUE。 例如41 & 1
.
到目前为止我尝试过什么
$regex = '/^1$/';
foreach ($value['events'] as $event) {
if ($event['type'] == $regex) {
echo 'Exist';
}
}
谢谢
您可以使用array_column()
和in_array()
if (in_array(1, array_column($value['events'], 'type'))) {
echo "Exist";
}
我输入的内容与 Barmar 的答案相同,但这是另一种选择。只需过滤掉与您的数字不相等的那些:
if(array_filter($value['events'], function($v) { return $v['type'] == 1; })) {
echo "Exist";
}
如果您需要测试多个条件,例如:
return ($v['type'] == 1 || $v['type'] == 2);
//or
return ($v['type'] == 1 && $v['other'] == 'X');