重构二维数组。key 是id val 是更新字段

$arr=Array (

‘contract_type‘ => Array (   ‘0‘ => 0, ‘1‘ => 0, ‘2‘ => 0,‘3‘ => 0, ),

‘use_contract‘ => Array (  ‘0‘ => 7,  ‘1‘ => 8,  ‘2‘ => 9, ‘3‘ => 10, ),

‘use_name‘ => Array (   ‘0‘ => ‘合同人1‘,  ‘1‘ => ‘合同人2‘,  ‘2‘ => ‘合同人3‘, ‘3‘ => ‘合同人4‘, ),

‘contract_money‘ => Array (   ‘0‘ => ‘合同金1‘,  ‘1‘ => ‘合同金2‘,   ‘2‘ => ‘合同金3‘,  ‘3‘ => ‘合同金4‘, ) );

$id_arr=$arr[‘use_contract‘];

unset($arr[‘use_contract‘]);

//重构二维数组。key 是id   val 是更新字段

$new_arr=array();

foreach ($arr as  $key=>$val){

foreach ($val as $k=>$v){

foreach ($id_arr as $id_k=>$id_v){

if($id_k==$k ){

$new[$id_v][$key]=$v;

}

}

}

}

var_dump($new);

时间: 2024-10-12 02:43:36

重构二维数组。key 是id val 是更新字段的相关文章

二维数组转化为json数组

二维数组转化为json数组 -1 var colName = [ ["08020092", "AVX", "1200m", "120", "0.3", "30u"], ["08020098", "KEMET", "1200m", "120", "1.0", "100u"

***php解析JSON二维数组字符串

客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id": 2, "msg_status": "HAS_READ" }] 是一个二维数组字符串 $json_data = json_decode($GLOBALS['HTTP_RAW_POST_DATA'], true);其实用这一句即可实现JSON二维数组字符串转P

如何从二维数组中的多个key中获取指定key的值?

精华 LOVEME96 2016-10-21 10:40:19 浏览(1512) 回答(3) 赞(0) 新手求教:二维数组中一般会有多个key,如果我们要获得指定key的值,应该怎么做? 问题标签: php 回答(3) TimberSwift 2016-10-21 第一种:最简单的方法: foreach遍历数组,代码: foreach ($arr as $key => $value) { $arr2[] = $value['name']; } 另一种方法:使用了array_map $arr2 =

php 替换二维数组的 key

php 替换二维数组中的 key // 需要替换 key 的数组 $arr_old = array( '0' => array('id' => 1, 'name' => 'Carroll'), '1' => array('id' => 2, 'name' => 'Chrdai'), '3' => array('id' => 3, 'name' => 'xiaodai'), ); // 将新的key定义一个新数组 $key_name = array('k

PHP二维数组根据某个元素(key)排序

/** * 二维数组根据key排序 * @param $arr * @param $arr_key * @param string $order 排序规则 * @return mixed */ function myArrayMultisort($arr,$arr_key,$order='asc'){ foreach($arr as $val){ $key_arrays[]=$val[$arr_key]; } if ($order == 'asc'){ array_multisort($key_

PHP方便快捷的将二维数组中元素的某一列值抽离出来作为此二维数组内元素的key

得益于PHP的强大的内置数组函数array_column();array_combine(); 举个小栗子: <?php // 先查询出用户的基本信息 $userArray = [['id' => 'zs', 'name' => '张三'], ['id' => 'ls', 'name' => '李四'], ['id' => 'wr', 'name' => '王二']]; // 将二维数组内某具体列的值组成一个新用户数组 $userArrayNew = array_

PHP二维数组合并,根据某个key合并

/** *PHP二维数组合并,根据某个key合并 * @param type $v 要传入的组合阵列 * @param type $keyname 对应的KEY名称. * @param type $valname 要写入的值KEY名称 * @param type $s 重组译的阵例.预设空值. */ function test($v,$keyname,$valname,$s=Array()){ foreach($v AS $_k => $d){ $s[$d[$keyname]][$valname

PHP二维数组根据某个元素(key)去重

/** * 二维数组根据key去重复 * @param $arr * @param $key * @return array */ function arrayUniqueness($arr,$key){ $res = array(); foreach ($arr as $value) { //查看有没有重复项 if(isset($res[$value[$key]])){ //有:销毁 unset($value[$key]); } else{ $res[$value[$key]] = $valu

php二维数组的取值与转换

1 while(list($key,$value) = each($arr)) 2 { 3 while(list($k,$v) = each($value)) 4 { 5 echo $key."==>".$k."===>".$v."<br>"; 6 } 7 } 1 $msg = array( 2 array( 3 'id'=>'45s', 4 'name'=>'jacks' 5 ), 6 array( 7 'i