Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php怎么删除数组中重复的元素值

php怎么删除数组中重复的元素值

青灯夜游
青灯夜游asal
2021-03-17 17:20:112627semak imbas

php删除数组中重复值的方法:1、使用array_unique()函数,语法“array_unique(array)”。2、先用array_flip()函数反转数组的键和值,去掉重复值;然后再用array_flip()将数组反转回来。

php怎么删除数组中重复的元素值

本教程操作环境:windows7系统、PHP8版,DELL G3电脑

php删除数组中重复的元素值

方法1:直接使用array_unique()函数

<?php
$arr1 = array("a" => "green", "b" => "red", "c" => "green", "d" => "blue","e" =>  "red");
var_dump($arr1);
$arr2 = array_unique($arr1);
var_dump($arr2);
?>

输出:

array (size=5)
  &#39;a&#39; => string &#39;green&#39; (length=5)
  &#39;b&#39; => string &#39;red&#39; (length=3)
  &#39;c&#39; => string &#39;green&#39; (length=5)
  &#39;d&#39; => string &#39;blue&#39; (length=4)
  &#39;e&#39; => string &#39;red&#39; (length=3)
  
array (size=3)
  &#39;a&#39; => string &#39;green&#39; (length=5)
  &#39;b&#39; => string &#39;red&#39; (length=3)
  &#39;d&#39; => string &#39;blue&#39; (length=4)

说明:

array_unique() 函数用于移除数组中重复的值。如果两个或更多个数组值相同,只保留第一个值,其他的值被移除。

注释:被保留的数组将保持第一个数组项的键名类型。

语法

array_unique(array)

1.png

方法2:使用两次array_flip()函数

<?php
header("content-type:text/html;charset=utf-8");
$arr = array("a" => "green", "b" => "red", "c" => "green", "d" => "blue","e" =>  "red");
// 输出原始数组
echo "原始数组 :";
var_dump($arr);
// 通过使用翻转键和值移除重复值
$arr = array_flip($arr);
// 通过再次翻转键和值来恢复数组元素
$arr = array_flip($arr);
// 重新排序数组键
$arr = array_values($arr);
// 输出更新后的数组
echo "更新数组 :";
var_dump($arr);
?>

输出:

原始数组 :
array (size=5)
  &#39;a&#39; => string &#39;green&#39; (length=5)
  &#39;b&#39; => string &#39;red&#39; (length=3)
  &#39;c&#39; => string &#39;green&#39; (length=5)
  &#39;d&#39; => string &#39;blue&#39; (length=4)
  &#39;e&#39; => string &#39;red&#39; (length=3)
  
更新数组 :
array (size=3)
  0 => string &#39;green&#39; (length=5)
  1 => string &#39;red&#39; (length=3)
  2 => string &#39;blue&#39; (length=4)

说明:

array_flip()是反转数组键和值的函数,它有个特性就是如果数组中有二个值是一样的,那么反转后会保留最后一个键和值,利用这个特性就可以间接实现数组的去重了。

语法

array_flip(array);

2.png

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci php怎么删除数组中重复的元素值. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php逻辑运算符的用法Artikel seterusnya:php自动跳转代码是什么