zoukankan      html  css  js  c++  java
  • extract_by_one 根据二维数组中某字段来提取数组信息,查看有无重复信息

        public function tt(){
    
            $param =  array(
                array (
                    'hykno'         => '2222222-CB',
                    'tcdk_fid'      => '458B6D70-FB7F-47AE-8356-777777777777',
                    'totalamount'   => '0',
                    'offsetamount'  => '90.0',
                    'postamount'    => '0',
                    'hysyamout'     => '10.0',
                    'protypeid'     => '1',
                ),
                array (
                    'hykno'         => '2222222-CB',
                    'tcdk_fid'      => '458B6D70-FB7F-47AE-8356-777777777777',
                    'totalamount'   => '0',           // 需要支付的钱
                    'offsetamount'  => '5.0',        // 抵扣分类1下5.0份;
                    'postamount'    => '0',            // 运费
                    'hysyamout'     => '5.0',
                    'protypeid'     => '1',
                ),
                array (
                    'hykno'         => '2222222-CC',
                    'tcdk_fid'      => '458B6D70-FB7F-47AE-8356-777777777777',
                    'totalamount'   => '0',           // 需要支付的钱
                    'offsetamount'  => '5.0',        // 抵扣分类1下5.0份;
                    'postamount'    => '0',            // 运费
                    'hysyamout'     => '5.0',
                    'protypeid'     => '7',
                ),
                array (
                    'hykno'         => '2222222-CC',
                    'tcdk_fid'      => '458B6D70-FB7F-47AE-8356-777777777777',
                    'totalamount'   => '0',           // 需要支付的钱
                    'offsetamount'  => '5.0',        // 抵扣分类1下5.0份;
                    'postamount'    => '0',            // 运费
                    'hysyamout'     => '5.0',
                    'protypeid'     => '7',
                ),
                array (
                    'hykno'         => '2222222-DD',
                    'tcdk_fid'      => '458B6D70-FB7F-47AE-8356-777777777777',
                    'totalamount'   => '0',           // 需要支付的钱
                    'offsetamount'  => '5.0',        // 抵扣分类1下5.0份;
                    'postamount'    => '0',            // 运费
                    'hysyamout'     => '5.0',
                    'protypeid'     => '3',
                )
            );
    
            //$this->merger_by_one($param,'protypeid',['totalamount','offsetamount','postamount','hysyamout']);
    
            $this->extract_by_one($param,'hykno');
        }
    
        /***
         * @param $param
         * @param $one_str '根据二维数组中某字段来提取数组信息,查看有无重复信息'
         */
        public function extract_by_one($param,$one_str){
            $u = array();
            foreach ($param as $k => $v){
                if (!in_array($v[$one_str],$u)){
                    $u[] = $v[$one_str];
                }
            }
    
            $data = array();
            foreach ($u as $uk => $uv)
            {
                foreach ($param as $pk => $pv)
                {
                    if ($pv[$one_str] == $uv){
                        $data[$uv][] = $pv;
                    }
                }
            }
    
            //$data = array_values($data);
    
            dump($data);
    
        }

    [2222222-CB] => Array
    (
    [0] => Array
    (
      [hykno] => 2222222-CB
      [tcdk_fid] => 458B6D70-FB7F-47AE-8356-777777777777
      [totalamount] => 0
      [offsetamount] => 90.0
      [postamount] => 0
      [hysyamout] => 10.0
      [protypeid] => 1
    )

    
    

    [1] => Array
    (
      [hykno] => 2222222-CB
      [tcdk_fid] => 458B6D70-FB7F-47AE-8356-777777777777
      [totalamount] => 0
      [offsetamount] => 5.0
      [postamount] => 0
      [hysyamout] => 5.0
      [protypeid] => 1
    )

    
    

    )

    
    

    [2222222-CC] => Array
    (
    [0] => Array
    (
      [hykno] => 2222222-CC
      [tcdk_fid] => 458B6D70-FB7F-47AE-8356-777777777777
      [totalamount] => 0
      [offsetamount] => 5.0
      [postamount] => 0
      [hysyamout] => 5.0
      [protypeid] => 7
    )

    
    

    [1] => Array
    (
      [hykno] => 2222222-CC
      [tcdk_fid] => 458B6D70-FB7F-47AE-8356-777777777777
      [totalamount] => 0
      [offsetamount] => 5.0
      [postamount] => 0
      [hysyamout] => 5.0
      [protypeid] => 7
    )

    
    

    )

    
    

    [2222222-DD] => Array
    (
    [0] => Array
    (
      [hykno] => 2222222-DD
      [tcdk_fid] => 458B6D70-FB7F-47AE-8356-777777777777
      [totalamount] => 0
      [offsetamount] => 5.0
      [postamount] => 0
      [hysyamout] => 5.0
      [protypeid] => 3
    )

    
    

    )



  • 相关阅读:
    docker pull配置代理方法
    docker配合ssh管道跨主机传输镜像
    Java面向对象详解
    云服务器的公网IP和内网IP的区别
    开启 kubectl 命令的自动补全功能
    Vue+Openlayers实现绘制线段并测量距离显示
    Vue+Openlayers+elradio实现切换地图显示
    koa使用swagger自动生成接口文档
    什么是低代码
    前后端统一接口的响应参数数据结构
  • 原文地址:https://www.cnblogs.com/pansidong/p/10145707.html
Copyright © 2011-2022 走看看