您的位置:首页 > 其它

数组运用技巧分享003

2017-01-11 14:00 260 查看
相同数组的key如何合并成一个二维数组

$a1 = Array(

     0 => 2280,

     1 => 1650,

     2 => 1650,

     3 => 2236,

     4 => 2236

);

$a2 =  Array(

            0 => '5343b8657d0e806b48e4daf1',

            1 => '533d11d27d0e806b48e4dac8',

            2 => '533d11d37d0e806b48e4dac9',

   3 => '533d1ffa7d0e806b48e4dace',

   4 => '533d1a2f7d0e806b48e4dacb'

        );

  

  

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

  $newarr[$val][] = $a2[$key];//$a2[$key]的值就等于value,$val的值就是第一个数组的value。

}

2.数组判断key是否有逗号然后重新组成数组

$array2 = array(

    '4' => '20001',

 '5' => '20002',

 '9,10,12' => '30001',

 '15,20,32' => '30002',

);

foreach ($array2 as $key=>$val)

{

 if (strstr($key,',')) {

  $tmp_arr = explode(',',$key);

  foreach ($tmp_arr as $k=>$v)

   $newarr[$v] = $val; //新数组重新组成的key=>val,$v就是订单号的值,以key为

 }else 

  $newarr[$key] = $val;

}

//new 数组拼接值 1001,1002,1003

$i=1;

$start=1001;

$new = array();

$arr = array(array('name'=>1,'city'=>2,'a'=>12),array('name'=>1,'city'=>2,'a'=>12));

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

    if ($val['a']>=12) {

     $new[$key] = $start+$i;

  $i++;//运行第二次的时候才加1,$i的下一次取值,之前已经定义了$i++这个后自增了

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: