首页 >后端开发 >php教程 >二维数组只选择目标字段

二维数组只选择目标字段

WBOY
WBOY原创
2016-08-10 09:07:321033浏览

我现在二维数组中有1千多条数据,每条数据中字段都有冗余,我现在每条数据中只需要我红框框出来的3条目标字段就好啦,其他的都不要,
我现在知道要用双重的foreach循环来做,但是一直做不出来,还请大家帮忙解答一下,谢谢
图如下:
二维数组只选择目标字段

回复内容:

我现在二维数组中有1千多条数据,每条数据中字段都有冗余,我现在每条数据中只需要我红框框出来的3条目标字段就好啦,其他的都不要,
我现在知道要用双重的foreach循环来做,但是一直做不出来,还请大家帮忙解答一下,谢谢
图如下:
二维数组只选择目标字段

题主你是想把二位数组里你想要的字段取出来吗, 不用两次foreach

<code class="php"><?php //---构造测试数据 ---
$arry = [];
for ($i=0; $i < 1000; $i++) { 
    $arry[] = [
        'platform_good_id' => mt_rand(1, 2000),
        'good_name' => 'goodname' . $i,
        'xxxxxxx' => 'xxxxx',
        'wadadad' => 'adwawdadwad',
        'remake' => ''
    ];
}
//---构造测试数据 ---



$data = [];

foreach ($arry as $key => $value) {
    $data[] = [
        'platform_good_id' => $value['platform_good_id'],
        'good_name'        => $value['good_name'],
        'remake'           => $value['remake'],
    ];
}


var_dump($data);

</code>

如下:

<code>



<?php $arr = array(
    "a"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"),
    "b"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"),
    "c"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"),
    "d"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"),
    "e"=>array("a"=>"a","b"=>"b","c"=>"c","d"=>"d","e"=>"e"));

$result = array();

foreach ($arr as $k => $v){
    $result[$k] = array();
    foreach($v as $key => $value){
        if($key === "b" || $key === "d" || $key === "e"){
            $result[$k][$key] = $value;
        }
    }
}
print_r($arr);
print("<br>");
print_r($result);
?>


</code>

以上代码是提取其中键值为 b d e的元素然后组成一个新的数组。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn