>백엔드 개발 >PHP 튜토리얼 >2차원 배열은 대상 필드만 선택합니다.

2차원 배열은 대상 필드만 선택합니다.

WBOY
WBOY원래의
2016-08-10 09:07:321043검색

이제 2차원 배열에 1,000개가 넘는 데이터 조각이 있고 각 데이터 조각의 필드가 중복되었습니다. 이제 빨간색 상자에 설명된 3개의 대상 필드만 필요합니다. 좋습니다. 다른 것은 필요하지 않습니다.
이제 이를 수행하려면 이중 foreach 루프를 사용해야 한다는 것을 알고 있지만 답변을 드릴 수 없습니다. 감사합니다. 당신
사진은 다음과 같습니다
2차원 배열은 대상 필드만 선택합니다.

답글 내용:

이제 2차원 배열에 1,000개가 넘는 데이터 조각이 있고 각 데이터 조각의 필드가 중복되었습니다. 이제 빨간색 상자에 설명된 3개의 대상 필드만 필요합니다. 좋습니다. 다른 것은 필요하지 않습니다.
이제 이를 수행하려면 이중 foreach 루프를 사용해야 한다는 것을 알고 있지만 답변을 드릴 수 없습니다. 감사합니다. 당신
사진은 다음과 같습니다
2차원 배열은 대상 필드만 선택합니다.

두 자리 배열에서 원하는 필드를 추출하시겠습니까? 두 번 할 필요는 없잖아요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><!DOCTYPE html>
<html>
<body>

<?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);
?>

</body>
</html></code>

위 코드는 키 값이 b d e인 요소를 추출한 후 새로운 배열을 구성합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.