array(2) { ["qty"] => int(2) ["id"] => int(251) } -6ren">
gpt4 book ai didi

php - 在嵌套数组中搜索值

转载 作者:可可西里 更新时间:2023-11-01 13:58:12 24 4
gpt4 key购买 nike

我有一个数组如下

array(2) {
["operator"] => array(2) {
["qty"] => int(2)
["id"] => int(251)
}
["accessory209"] => array(2) {
["qty"] => int(1)
["id"] => int(209)
}
["accessory211"] => array(2) {
["qty"] => int(1)
["id"] => int(211)
}
}

我试图找到一种方法来验证数组中是否存在 id 值并返回 bool。我正在尝试找出一种不需要创建循环的快速方法。使用 in_array 函数没有用,而且我还读到它很慢。

在 php 手册中,有人建议先使用 flip_array(),然后再使用 isset(),但我无法将其用于二维数组。

做类似的事情

if($array['accessory']['id'] == 211)

也适用于我,但我需要匹配所有包含配件的 key ——不知道该怎么做

无论如何,我正在原地打转,需要一些帮助。这看起来应该很容易。谢谢。

最佳答案

array_walk()可用于检查特定值是否在数组内; - 它遍历传递给作为第二个参数提供的函数的所有数组元素。例如,可以在以下代码中调用该函数。

function checkValue($value, $key) {
echo $value['id'];
}

$arr = array(
'one' => array('id' => 1),
'two' => array('id' => 2),
'three' => array('id' => 3)
);

array_walk($arr, 'checkValue');

关于php - 在嵌套数组中搜索值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2693310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com