public function tt(){

        $param =  array(
array (
'hykno' => '2222222-CB',
'tcdk_fid' => '458B6D70-FB7F-47AE-8356-777777777777',
'totalamount' => '',
'offsetamount' => '90.0',
'postamount' => '',
'hysyamout' => '10.0',
'protypeid' => '',
),
array (
'hykno' => '2222222-CB',
'tcdk_fid' => '458B6D70-FB7F-47AE-8356-777777777777',
'totalamount' => '', // 需要支付的钱
'offsetamount' => '5.0', // 抵扣分类1下5.0份;
'postamount' => '', // 运费
'hysyamout' => '5.0',
'protypeid' => '',
),
array (
'hykno' => '2222222-CC',
'tcdk_fid' => '458B6D70-FB7F-47AE-8356-777777777777',
'totalamount' => '', // 需要支付的钱
'offsetamount' => '5.0', // 抵扣分类1下5.0份;
'postamount' => '', // 运费
'hysyamout' => '5.0',
'protypeid' => '',
),
array (
'hykno' => '2222222-CC',
'tcdk_fid' => '458B6D70-FB7F-47AE-8356-777777777777',
'totalamount' => '', // 需要支付的钱
'offsetamount' => '5.0', // 抵扣分类1下5.0份;
'postamount' => '', // 运费
'hysyamout' => '5.0',
'protypeid' => '',
),
array (
'hykno' => '2222222-DD',
'tcdk_fid' => '458B6D70-FB7F-47AE-8356-777777777777',
'totalamount' => '', // 需要支付的钱
'offsetamount' => '5.0', // 抵扣分类1下5.0份;
'postamount' => '', // 运费
'hysyamout' => '5.0',
'protypeid' => '',
)
); //$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
)


)


extract_by_one 根据二维数组中某字段来提取数组信息,查看有无重复信息的更多相关文章

  1. Structure From Motion(二维运动图像中的三维重建)

    SfM(Structure from Motion)简介 Structure from motion (SfM) is a photogrammetric range imaging techniqu ...

  2. QRCode二维码生成方案及其在带LOGO型二维码中的应用(1)

    原文:QRCode二维码生成方案及其在带LOGO型二维码中的应用(1) 提要:很多公司为商业宣传之需,常将企业LOGO加入二维码中,但如果LOGO遮挡区域足够地大,二维码就变得无法识别.那么,有没有一 ...

  3. QRCode二维码生成方案及其在带LOGO型二维码中的应用(2)

    原文:QRCode二维码生成方案及其在带LOGO型二维码中的应用(2) 续前:QRCode二维码生成方案及其在带LOGO型二维码中的应用(1)  http://blog.csdn.net/johnsu ...

  4. Python算法之动态规划(Dynamic Programming)解析:二维矩阵中的醉汉(魔改版leetcode出界的路径数)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_168 现在很多互联网企业学聪明了,知道应聘者有目的性的刷Leetcode原题,用来应付算法题面试,所以开始对这些题进行" ...

  5. MongoDB 学习笔记之 从数组中删除元素和指定数组位置

    从数组中删除元素: 从数组中删除单个元素: db.ArrayTest.updateOne({ "name" : "Bill"},{$pop: {"ad ...

  6. Javascript 获得数组中相同或不同的数组元素   

    Javascript 获得数组中相同或不同的数组元素 在Javascript中,偶尔会用到获取数组中相同或不同的元素值的情况,以下提供了获得数组中相同或不同的 元素函数供参考学习使用. // 数字类型 ...

  7. PHP中根据二维数组中某个字段实现排序

    想要实现二维数组中根据某个字段排序,一般可以通过数组循环对比的方式实现.这里介绍一种更简单的方法,直接通过PHP函数实现.array_multisort() :可以用来一次对多个数组进行排序,或者根据 ...

  8. PHP使用array_filter查找二维数组中符合字段和字段值的数据集合

    1.方法: /** * 获取符合字段和字段值的数组集合 * @param array $data 待过滤数组 * @param string $field 要查找的字段 * @param $value ...

  9. ThoughtWorks.QRCode 生成QR二维码时提示“索引超出了数组界限”的原因和解决方法

    "索引超出了数组界限"也有可能确实是因为你选择的二维码Version对应的容量不足以存储你所放的内容,如果你确定使用的版本容量二维码能存储你的内容,但还是报错,那么再考虑此解决方法 ...

随机推荐

  1. JAVA分代收集机制详解

    Java堆中是JVM管理的最大一块内存空间.主要存放对象实例. 在JAVA中堆被分为两块区域:新生代(young).老年代(old). 堆大小=新生代+老年代:(新生代占堆空间的1/3.老年代占堆空间 ...

  2. React Native (0.57)开发环境搭建(注意:Node不要随便更新到最新版,更新完后莫名其妙的问题一大堆)

    搭建开发环境 一.安装依赖 必须安装的依赖有:Node.Watchman 和 React Native 命令行工具以及 Xcode. 1.首先安装 Homebrew 2.安装 Node, Watchm ...

  3. centos下配置gitosis服务器

    背景: 一台windows电脑,Xshell可以登录centos服务器(centos7.2 64位,有root用户权限),windows电脑已经安装好git和tortoies 在windows下下载和 ...

  4. Linux基础入门--04

    目录结构及文件基本操作 实验介绍: 1.Linux 的文件组织目录结构. 2.相对路径和绝对路径. 3.对文件的移动.复制.重命名.编辑等操作. 一.Linux 目录结构 在讲 Linux 目录结构之 ...

  5. GITHUB随笔 15-5月 junit

    junit 是用来做单元测试的一个工具  测试是一个持续的过程.也就是说测试贯穿与开发的整个过程中,单元测试尤其适合于迭代增量式的开发过程. @ignore:   该元数据标记的测试方法在测试中会被忽 ...

  6. Unity3D游戏开发——物品存储:List与Dictionary

    本篇简介 本文介绍如何将碰撞处理后的物体存储在管理器中,分别用到两种不同的数据结构--List和Dictionary.我们将继续在上一篇博客的编程基础上进行完善. List和Dictionary的区别 ...

  7. 由一个滑动条的任务需求产生一个对UISlider控件的探讨

    任务需求样式:

  8. 定时任务中的备份不同的数据库中的所有的表,每个表使用单独的sql备份文件

    #! /bin/bash # 指定用户 USER=root # 指定密码 PASS=123456 # 指定主机地址 HOST=localhost # 指定备份的目录 BACKUP=/backup/sq ...

  9. 基于MongoDB2.6版本配置MongoDB主从复制集群架构

    1:集群环境说明:mongodb1:192.168.43.10.mongodb2:192.168.43.11.mongodb3:192.168.43.12.且基于主机名相互通信/etc/hosts文件 ...

  10. Java:JUnit4使用详解

    对于Junit的总是一知半解不太懂,现在认真梳理一下: 此次针对的是Junit4版本,注解也是在Junit4版本才有的,之前的版本并无注解功能.而注解开发基本上被认为是一种优秀的设计,所以我们写单元测 ...