求教一个PHP二维数组转一维数组最有效率的方法
巴扎黑
巴扎黑 2017-04-10 16:25:25
0
6
258

二维数组:

Array ( [0] => Array ( [cnname] => 巴宝莉 ) [1] => Array ( [cnname] => 巴宝 ) )

转换结果为

Array('巴宝莉','巴宝');

请尽量不要使用foreach,尽量使用php内置函数

巴扎黑
巴扎黑

모든 응답 (6)
小葫芦

$old = array(array("cnname"=>"巴宝莉"),array("cnname"=>"巴宝"));var_dump(array_column($old,'cnname'));

    小葫芦
     2135, 'first_name' => 'John', 'last_name' => 'Doe', ), array( 'id' => 3245, 'first_name' => 'Sally', 'last_name' => 'Smith', ), array( 'id' => 5342, 'first_name' => 'Jane', 'last_name' => 'Jones', ), array( 'id' => 5623, 'first_name' => 'Peter', 'last_name' => 'Doe', ) ); $first_names = array_column($records, 'first_name'); print_r($first_names); ?>

    Result

    Array ( [0] => John [1] => Sally [2] => Jane [3] => Peter )

    http://php.net/manual/ja/function.array-column.php

      阿神
      json_decode(str_replace(array('"cnname":',"{","}"),array('','',''),json_encode($arr))); 效率不敢保证。
        Ty80
        $old = array(array("cnname"=>"巴宝莉"),array("cnname"=>"巴宝")); $new = array(); for($i = 0; $i < count($old); $i++){ $new[] = $old[$i]["cnname"]; } var_dump($new);
          Peter_Zhu

          array_column($array,'key') 返回数组中指定的一列,可以用作提取二维数组某一列做一维数组(5.5以上才能使用)
          谁用谁知道,我自己的笔记~项目中碰到过的。。

            阿神

            array_map(function($a){return $a['cnname']},$arr)

              최신 다운로드
              더>
              웹 효과
              웹사이트 소스 코드
              웹사이트 자료
              프론트엔드 템플릿
              회사 소개 부인 성명 Sitemap
              PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!