广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php 怎么去掉重复的数据
  • 410
分享到

php 怎么去掉重复的数据

php 2018-02-18 16:02:28 410人浏览 猪猪侠
摘要

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑php 怎么去掉重复的数据?php去除重复的数组数据<?php $input = array("a" => "green&quo

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php 怎么去掉重复的数据?

php去除重复的数组数据

<?php
$input = array("a" => "green","", "red","b" => "green", "","blue", "red","c" => "witer","hello","witer");
//$result = array_unique($input); //去除重复元素
$result = a_array_unique($input);   //只留下单一元素
foreach($result as $aa)
{
echo $aa."<br />";
}
function multi_unique($array) {
   foreach ($array as $k=>$na)
       $new[$k] = serialize($na);
   $uniq = array_unique($new);
   foreach($uniq as $k=>$ser)
       $new1[$k] = unserialize($ser);
   return ($new1);
}
function a_array_unique($array)//写的比较好
{
   $out = array();
   foreach ($array as $key=>$value) {
       if (!in_array($value, $out))
{
           $out[$key] = $value;
       }
   }
   return $out;
}
?>

PHP数组去除重复项 有个内置函数array_unique (),但是php的 array_unique函数只适用于一维数组,对多维数组并不适用,以下提供一个二维数组 的 array_unique函数

function unique_arr($array2D,$sTKEep=false,$ndfORMat=true)
{
    // 判断是否保留一级数组键 (一级数组键可以为非数字)
    if($stkeep) $stArr = array_keys($array2D);
    // 判断是否保留二级数组键 (所有二级数组键必须相同)
    if($ndformat) $ndArr = array_keys(end($array2D));
    //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
    foreach ($array2D as $v){
        $v = join(",",$v);
        $temp[] = $v;
    }
    //去掉重复的字符串,也就是重复的一维数组
    $temp = array_unique($temp);
    //再将拆开的数组重新组装
    foreach ($temp as $k => $v)
    {
        if($stkeep) $k = $stArr[$k];
        if($ndformat)
        {
            $tempArr = explode(",",$v);
            foreach($tempArr as $ndkey => $ndval) $output[$k][$ndArr[$ndkey]] = $ndval;
        }
        else $output[$k] = explode(",",$v);
    }
    return $output;
}

演示:

$array2D = array('first'=>array('title'=>'1111','date'=>'2222'),'second'=>array('title'=>'1111','date'=>'2222'),'third'=>array('title'=>'2222','date'=>'3333'));  
print_r($array2D);  
print_r(unique_arr($array2D,true));

方法2:

例1

一,PHP一维数组去除重复项(使用array_unique函数)。

例1,代码:

<?php
 $aa=array("apple","banana","pear","apple","wail","watermalon");
  $bb=array_unique($aa);
   print_r($bb);
?>

输出结果:

Array ( [0] => apple [1] => banana [2] => pear [4] => wail [5] => watermalon )

二,PHP二维数组的重复项:

对于二维数组咱们分两种情况讨论,一种是因为某一键名的值不能重复,删除重复项;

另一种因为内部的一维数组不能完全相同,而删除重复项。

例1,因为某一键名的值不能重复,删除重复项。

代码:

<?php
  function assoc_unique($arr, $key)
   {
     $tmp_arr = array();
     foreach($arr as $k => $v)
    {
       if(in_array($v[$key], $tmp_arr))//搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true
      { // www.jbxue.com
         unset($arr[$k]);
      }
    else {
        $tmp_arr[] = $v[$key];
      }
    }
  sort($arr); //sort函数对数组进行排序
  return $arr;
  }
  $aa = array(
  array('id' => 123, 'name' => '张三'),
  array('id' => 123, 'name' => '李四'),
  array('id' => 124, 'name' => '王五'),
  array('id' => 125, 'name' => '赵六'),
  array('id' => 126, 'name' => '赵六')
  );
  $key = 'id';
  assoc_unique(&$aa, $key);
  print_r($aa);
  ?>

输出结果:

Array ( [0] => Array ( [id] => 123 [name] => 张三 ) [1] => Array ( [id] => 124 [name] => 王五 ) [2] => Array ( [id] => 125 [name] => 赵六 )
[3] => Array ( [id] => 126 [name] => 赵六 ) )

例2,因内部的一维数组不能完全相同,而删除重复项。

代码:

<?php
  function array_unique_fb($array2D){
       foreach ($array2D as $v){
           $v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
           $temp[] = $v;
       } // www.jbxue.com
       $temp = array_unique($temp);    //去掉重复的字符串,也就是重复的一维数组
      foreach ($temp as $k => $v){
          $temp[$k] = explode(",",$v);   //再将拆开的数组重新组装
      }
      return $temp;
  }
  $aa = array(
  array('id' => 123, 'name' => '张三'),
  array('id' => 123, 'name' => '李四'),
  array('id' => 124, 'name' => '王五'),
  array('id' => 123, 'name' => '李四'),
  array('id' => 126, 'name' => '赵六')
  );
  $bb=array_unique_fb($aa);
  print_r($bb)
  ?>
Array ( [0] => Array ( [0] => 123 [1] => 张三 ) [1] => Array ( [0] => 123 [1] => 李四 ) [2] => Array ( [0] => 124 [1] => 王五 ) [4] => Array ( [0] =>
126 [1] => 赵六 ) )

--结束END--

本文标题: php 怎么去掉重复的数据

本文链接: https://www.lsjlt.com/news/1195.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php 怎么去掉重复的数据
    本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑php 怎么去掉重复的数据?PHP去除重复的数组数据<php $input = array("a" => "green"...
    99+
    2018-02-18
    php
  • java怎么去掉重复的数据
    在Java中,可以使用Set来去除重复的数据。Set是Java中的一种集合类型,它不允许包含重复的元素。 以下是一个示例代码,展示如...
    99+
    2023-10-26
    java
  • php如何去掉重复的数据
    小编今天带大家了解php如何去掉重复的数据,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“php如何去掉重复的数据”的知识吧。php去...
    99+
    2023-06-29
  • php 去掉重复的数组
    PHP是一种流行的服务器端编程语言,被广泛应用于Web开发。在开发过程中,数组是一个重要的数据类型。有时候,我们需要从一个数组中去掉重复的值。本文将介绍如何使用PHP去掉数组中的重复元素。方法1:使用array_unique()PHP提供了...
    99+
    2023-05-23
  • php 去掉数组中重复数据库
    PHP是一门流行的服务器端编程语言,广泛用于开发Web应用程序。在PHP开发中,操作数据库是非常常见的需求之一。当我们从数据库中获取数据时,经常会出现数据重复的情况。如果我们需要对这些重复数据进行去重操作,可以使用PHP的数组去重的方法来实...
    99+
    2023-05-24
  • php怎么去掉重复元素
    本篇内容介绍了“php怎么去掉重复元素”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php去掉重复元素的方法是,使用array_unique...
    99+
    2023-06-20
  • php 合并数组去掉重复的数据库
    随着互联网的高速发展,PHP已经成为了网页开发领域最为流行的语言之一。PHP语言在处理数组时有着相当出色的表现,它提供了许多方法可以轻松实现数组的合并、去重等操作,在数据库中也有非常广泛的应用。本文将介绍如何使用PHP合并数组并将重复内容去...
    99+
    2023-05-19
  • oracle怎么查询并去掉重复数据
    在Oracle中,可以使用`SELECT DISTINCT`关键字来查询并去掉重复数据。具体的查询语法如下:```SELEC...
    99+
    2023-08-31
    oracle
  • 使用php怎么去掉数组中的重复项
    今天就跟大家聊聊有关使用php怎么去掉数组中的重复项,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在php中我们可以利用array_unique函数来移除数组中的重复项,我们先来介绍...
    99+
    2023-06-15
  • php怎么合并数组并去掉重复值
    实现步骤:1、使用array_merge()函数合并两个或多个数组,语法“array_merge(数组1,数组2....)”,会返回一个合并数组;2、使用array_unique()函数去除合并数组中的重复值即可,语法“array_uniq...
    99+
    2022-07-05
    php数组 php
  • mysql如何去掉重复的数据
    这篇文章给大家分享的是有关mysql如何去掉重复的数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 在mysql中,可以利用“SELECT”...
    99+
    2022-10-19
    mysql
  • php中两个数组怎么去掉重复的元素
    本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。php中两个数组怎么去掉重复的元素?PHP删除两个数组中相同的元素:代码如下:<php $invite1 = '18,19,20,21,22';...
    99+
    2015-02-20
    php
  • php字符串怎么去掉重复字符
    去重步骤:1、使用str_split()函数将字符串转为字符数组,语法“str_split(字符串,1)”;2、使用array_unique()函数去除字符数组中的重复值,语法“array_unique(字符数组)”;3、使用implode...
    99+
    2022-08-08
    php php字符串
  • php数据库怎么去除重复数据
    本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑php数据库怎么去除重复数据?开发项目的时候往往会有重复数据,如何去除重复数据呢?今天给大家分享一个简单的方法,正常无论是用框架开发还是原生 php 都很少有自带的去重复...
    99+
    2019-05-29
    php
  • php去掉一维数组重复元素
    对于一个一维数组,如果存在重复的元素,去除这些重复元素是编程中的常见需求。在PHP中,我们可以通过几种方式实现这一目标。本文将介绍几种常用的方法。方法一:使用array_unique函数array_unique函数是PHP自带的函数,可以方...
    99+
    2023-05-19
  • SQL 取最新数据&去掉重复数据
    1、去掉重复数据DISTINCT SELECT DISTINCT 去掉重复数据列 FROM TestE WHERE pn="SPLW"   2、取最新数据 select * FROM TestE WHER...
    99+
    2020-01-13
    SQL 取最新数据&去掉重复数据
  • C语言怎么去掉数组重复值
    可以使用两层循环来遍历数组,比较每两个元素是否相同,如果相同则将其中一个元素删除。以下是一个示例代码:```c#include vo...
    99+
    2023-09-26
    C语言
  • php中怎么去掉字符串中重复的字母
    小编给大家分享一下php中怎么去掉字符串中重复的字母,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php去掉重复字母的方法:首先使用str_split()函数将字...
    99+
    2023-06-15
  • php如何合并数组并去掉重复值
    今天小编给大家分享一下php如何合并数组并去掉重复值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。实现步骤:1、使用arra...
    99+
    2023-07-02
  • linux中去掉文件重复数据行的方法
    本篇内容主要讲解“linux中去掉文件重复数据行的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中去掉文件重复数据行的方法”吧!一、去掉相邻重复的数据行代码如下:$cat data...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作