Maison >développement back-end >tutoriel php >求教一个PHP二维数组转一维数组最有效率的方法
二维数组:
<code>Array ( [0] => Array ( [cnname] => 巴宝莉 ) [1] => Array ( [cnname] => 巴宝 ) )</code>
转换结果为
<code>Array('巴宝莉','巴宝');</code>
请尽量不要使用foreach,尽量使用php内置函数
二维数组:
<code>Array ( [0] => Array ( [cnname] => 巴宝莉 ) [1] => Array ( [cnname] => 巴宝 ) )</code>
转换结果为
<code>Array('巴宝莉','巴宝');</code>
请尽量不要使用foreach,尽量使用php内置函数
$old = array(array("cnname"=>"巴宝莉"),array("cnname"=>"巴宝"));var_dump(array_column($old,'cnname'));
<code>json_decode(str_replace(array('"cnname":',"{","}"),array('','',''),json_encode($arr))); 效率不敢保证。</code>
<code class="php"><?php $records = array( array( 'id' => 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); ?></code>
Result
<code class="php">Array ( [0] => John [1] => Sally [2] => Jane [3] => Peter )</code>
http://php.net/manual/ja/function.array-column.php
<code>$old = array(array("cnname"=>"巴宝莉"),array("cnname"=>"巴宝")); $new = array(); for($i = 0; $i </code>
array_column($array,'key') 返回数组中指定的一列,可以用作提取二维数组某一列做一维数组(5.5以上才能使用)
谁用谁知道,我自己的笔记~项目中碰到过的。。
array_map(function($a){return $a['cnname']},$arr)