首页 > 编程语言 >PHP 二维数组去重(保留指定键值的同时去除重复的项)

PHP 二维数组去重(保留指定键值的同时去除重复的项)

时间:2022-08-26 10:12:31浏览次数:87  
标签:tmp arr name age 二维 键值 key array PHP

$arr = array(
    '0' => array(
        'name' => 'james',
        'age' => 30,
    ),
    '1' => array(
        'name' => 'susu',
        'age' => 26,
    ),
    '2' => array(
        'name' => 'james',
        'age' => 30,
    ),
    '3' => array(
        'name' => 'kube',
        'age' => 37,
    ),
    '4' => array(
        'name' => 'kube',
        'age' => 27,
    ),
);

$key = "name";

function second_array_unique_bykey($arr, $key)
{
    $tmp_arr = array();
    foreach ($arr as $k => $v) {
        if (in_array($v[$key], $tmp_arr))   //搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true
        {
            unset($arr[$k]); //销毁一个变量  如果$tmp_arr中已存在相同的值就删除该值
        } else {
            $tmp_arr[$k] = $v[$key];  //将不同的值放在该数组中保存
        }
    }
    //ksort($arr); //ksort函数对数组进行排序(保留原键值key)  sort为不保留key值
    return $arr;
}

$result = second_array_unique_bykey($arr, $key);
echo "<pre>";
print_r($result);

https://www.cnblogs.com/T8888/p/12929615.html

标签:tmp,arr,name,age,二维,键值,key,array,PHP
From: https://www.cnblogs.com/xiaoyantongxue/p/16626624.html

相关文章

  • PHP的session垃圾回收机制
     session垃圾回收机制-wen_php-博客园 https://www.cnblogs.com/wenphp/p/4871500.html在PHP中,没有任何变量指向这个对象时,这个对象就成为垃圾。PHP会将其在内......
  • 如何严格设置php中session过期时间
    如何严格设置php中session过期时间-yangboom-博客园 https://www.cnblogs.com/YangJieCheng/p/7268378.html如何严格限制session在30分钟后过期!1.设置客户端cookie......
  • 本节汇集了你在写 PHP 脚本时可能碰到的大多数普通错误。
    PHP:使用PHP-Manual https://www.php.net/manual/zh/faq.using.php#faq.using.shorthandbytes注意: kilobyte和kibibyte的区别PHP将一个千字节(kilobyte)描述为......
  • thinkphp实现上传文件(uploadify插件)
    语言:php框架:thinkphp3.2.3上传插件:uploadify插件包:点击这里下载1、在html页面或者模板中引入CSS和JS<linkrel="stylesheet"type="text/css"href="__PUBLIC__/uplo......
  • 简单的thinkphp+uploadify实现上传
    Uploadify+thinkphp解决图片上传问题首先到官网上http://www.uploadify.com/下载 下载flash免费版本,HTML5版本为收费版本。下载下来为一个软件包。Index为入口文......
  • PHP的session文件包含与竞争
    PHP的session文件包含与竞争[email protected]博客园(cnblogs.com)一、什么是SessionSession:在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象存......
  • php变量 global/static
    通常,函数内定义的变量,在函数内生效,函数执行完毕销毁global全局变量,函数外可以调用 functiontestGlobal(){  global$a;  $a=1;}//testGlobal();/......
  • Java生成带logo的二维码,并将二维码添加到图片中
    1.pom.xml<!--生成二维码--><dependency><groupId>cn.hutool</groupId><artifactId>hutool-extra</artifactId><version>5.4.3</version></dependency><d......
  • PHP serialize() unserialize()
    PHPserialize()函数PHP可用的函数PHP可用的函数serialize()函数用于序列化对象或数组,并返回一个字符串。serialize()函数序列化对象后,可以很方便的将它传递给其他......
  • php代码实现redis连接池
    通常情况下,当我们需要做redis操作时,会创建一个连接,并基于这个连接进行redis操作,操作完成后,释放连接,一般情况下,这是没问题的,但当并发量比较高的时候,频繁的......