繁体   English   中英

PHP-使用另一个数组从多维数组获取值

PHP - getting the value from the multidimensional array using another array

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有两个数组:

$mainArray = array(
        ['id' => 1, 'name' => 'test'],
        ['id' => 2, 'name' => 'news'],
        ['id' => 3, 'name' => 'foo'],
        ['id' => 4, 'name' => 'bar']...
        );

$array = array(1,2,5,6,7);

我需要检查$ mainArray中的id是否包含在$ array中 ,以及是否包含它需要打印的名称。 我怎样才能做到这一点?

2 个回复

简单!

foreach($mainArray as $arr) {
    if(in_array($arr['id'], $array)) {
        echo $arr['id'];
    }
}

这应该为您工作:

(使用此解决方案,您有一个数组,其中idkeynamevalue

<?php

    $mainArray = array(
                    ['id' => 1, 'name' => 'test'],
                    ['id' => 2, 'name' => 'news'],
                    ['id' => 3, 'name' => 'foo'],
                    ['id' => 4, 'name' => 'bar']
                );

    $array = array(1,2,5,6,7);
    $result = array();

    foreach($mainArray as $k => $v)
        $result[$v["id"]] = (array_intersect($mainArray[$k], $array) ? $mainArray[$k]["name"] : "");

    $result = array_filter($result);
    print_r($result);

?>

输出:

Array ( [1] => test [2] => news )

您可以轻松地通过数组打印出所有类似的信息:

array_walk($result, function($value, $key) { 
    echo "Key: $key Value: $value <br />";
});

//OR

foreach($result as $key => $value)
    echo "Key: $key Value: $value <br />";

输出:

Key: 1 Value: test 
Key: 2 Value: news 
1 将多维数组与PHP中的另一个数组进行比较,并从多维数组中获取值

我有一个XML文件中的多维数组,我想将其与普通数组进行比较。 我需要将多维数组中的[标签]名称与另一个数组中的名称进行比较,并从属于该标签的多维数组中获取值。 我需要将其与多维数组进行比较的第二个数组: 现在,我要检查多维数组中$ compare_array的键是否匹配。 如 ...

4 PHP-通过多维数组中的键获取值

我有一个多维数组,如: 我想按键获取值,我尝试了下面的代码,但没有用 如何获得键field_special_features5_value Special Function 5的值? 谢谢 ...

6 PHP - 按另一个数组对多维数组进行排序

我正在尝试按另一个数组对多维数组进行排序,但到目前为止还不够。 array_multisort似乎只适用于真正的排序。 假设我有这两个数组: 现在我想根据$order数组中的顺序对$data数组进行排序。 这就是我想要的结果: 我可以通过运行嵌套循环轻松完成此操作,但这不能很好地扩展( ...

7 PHP-按数字范围将多维数组排序为另一个数组

我有一个从数据库获得的多维数组。 数组每小时都有许多视图,这些视图作为视图记录在数据库中,如下所示: 我需要制作一个新数组,其中包含2小时范围内的视图数。 因此,例如,从上面显示的数组中,我想得到一个数组,在这种情况下,0-2之间的视图数量为2,而2-4的视图数量为0,依此类推。 ...

10 php - 如何在另一个数组中添加数组以在PHP中创建多维数组?

我必须递归地将大约 40 个数组附加到一个数组中。 我正在创建一个包含所有单独数组的单个数组,因为我想要一个层次结构。 我附上了图片来展示我想要的层次结构。 格式化图像 下面我列出了一些示例数组以及我希望它们如何格式化的示例格式: 我希望将这些数组保存在单个数组中(如果可能,递归)。 以下是我希 ...

暂无
暂无

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

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