PHP多维数组转一维数组函数
做数据配置项时候,需要做缓存匹配,把多维数组的配置项,转换成一维数组。
场景:即把多维数组列表id和统计值转换成一维数组
PHP封装函数
/** * PHP 多维数组转换一维数组 * @param array $list * @param string $key * @param string $value * @return array|false */ function array_more_to_one(array $list,string $key = 'id',string $value = 'count') { $rsp = []; if (!empty($list)){ // array_column 提取id作为键,field 作为值 $keys = array_column($list, $key); $values = array_column($list, $value); //然后使用array_combine将这两个数组合并,其中一个数组的值为新的键,另一个数组的值为新的值 $rsp = array_combine($keys, $values); } return $rsp; }
示例
原始数据:
Array ( [0] => Array ( [id] => 1 [title] => 生活随笔 [count] => 2 ) [1] => Array ( [id] => 2 [title] => PHP [count] => 22 ) [2] => Array ( [id] => 3 [title] => showdoc [count] => 1 ) [3] => Array ( [id] => 4 [title] => JavaScript [count] => 8 ) )
调用函数 输出:
Array ( [1] => 2 [2] => 22 [3] => 1 [4] => 8 )