php 移除数组重复元素的一点说明


Posted in PHP onNovember 27, 2008

如:

$test_array=array(1,2,3,4,4,5,5,6); 
$test_array_unique=array_unique($test_array); 
print_r($test_array_unique); 
$test_array=array(1,2,3,4,4,5,5,6); 
$test_array_unique=array_unique($test_array); 
print_r($test_array_unique);
但是至此,不要粗心,事还没结束。细心的看你会发现经管重复的元素被移除了,但是剩下来这些元素的索引没有变化,这样的话如果用for循环调用这个数组元素的时候就会发生错误了,因为for循环的时候是按照数字递增,而且大多数人用的是count($test_array_unique)来获得数组的大小,这样就会造成一些元素被遗漏;
$test_array=array(1,2,3,4,4,5,5,6); 
$test_array_unique=array_unique($test_array); 
for($i=0;$i<count($test_array_unique);$i++) 
{ 
echo $test_array_unique[$i]; 
} 
$test_array=array(1,2,3,4,4,5,5,6); 
$test_array_unique=array_unique($test_array); 
for($i=0;$i<count($test_array_unique);$i++) 
{ 
echo $test_array_unique[$i]; 
}
这样你不会看到元素6被输出,因为6的索引是8,处理前的数组和处理后的数组索引没有任何改变;
解决办法:
当然,这里解决办法太多了,我介绍的只是一种我觉得比较简单的方法,那就是函数array_values,array_values是返回数组的值,跟索引没有关系,这样处理后会形成一个新的数组,严格按照数字递增的索引,这样再使用for循环输出边一切OK了!
$test_array=array(1,2,3,4,4,5,5,6); 
$test_array_unique=array_values(array_unique($test_array)); 
for($i=0;$i<count($test_array_unique);$i++) 
{ 
echo $test_array_unique[$i]; 
}
PHP 相关文章推荐
php socket方式提交的post详解
Jul 19 PHP
php session 检测和注销
Mar 16 PHP
从Web查询数据库之PHP与MySQL篇
Sep 25 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
Dec 29 PHP
Smarty的配置与高级缓存技术分享
Jun 05 PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
Mar 22 PHP
PHP简单实现生成txt文件到指定目录的方法
Apr 25 PHP
php编译安装php-amq扩展简明教程
Jun 25 PHP
php判断用户是否关注微信公众号
Jul 22 PHP
PHP文件下载实例代码浅析
Aug 17 PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
Apr 09 PHP
Laravel事件监听器用法实例分析
Mar 12 PHP
PHP 遍历XP文件夹下所有文件
Nov 27 #PHP
cmd下运行php脚本
Nov 25 #PHP
PHPMailer安装方法及简单实例
Nov 25 #PHP
php miniBB中文乱码问题解决方法
Nov 25 #PHP
php AJAX实例根据邮编自动完成地址信息
Nov 23 #PHP
php 删除无限级目录与文件代码共享
Nov 22 #PHP
PHP strtr() 函数使用说明
Nov 21 #PHP
You might like
php简单实现数组分页的方法
2016/04/30 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
2019/03/30 PHP
PHP实现八皇后算法
2019/05/06 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
2012/01/15 Javascript
javascript jscroll模拟html元素滚动条
2012/12/18 Javascript
js解决弹窗问题实现班级跳转DIV示例
2014/01/06 Javascript
基于jquery实现鼠标左右拖动滑块滑动附源码下载
2015/12/23 Javascript
Bootstrap3制作图片轮播效果
2016/05/12 Javascript
Express+Nodejs 下的登录拦截实现代码
2017/07/01 NodeJs
使用rollup打包JS的方法步骤
2018/12/05 Javascript
详解Express笔记之动态渲染HTML(新手入坑)
2018/12/13 Javascript
Vue-cli3.X使用px2 rem遇到的问题及解决方法
2019/08/08 Javascript
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
Python搭建HTTP服务器和FTP服务器
2017/03/09 Python
Python使用正则表达式抓取网页图片的方法示例
2017/04/21 Python
[原创]Python入门教程3. 列表基本操作【定义、运算、常用函数】
2018/10/30 Python
python使用turtle绘制国际象棋棋盘
2019/05/23 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
使用pytorch完成kaggle猫狗图像识别方式
2020/01/10 Python
pandas按条件筛选数据的实现
2021/02/20 Python
酒店销售主管岗位职责
2014/01/04 职场文书
自主实习接收函
2014/01/13 职场文书
人事科岗位职责范本
2014/03/02 职场文书
学生党员一帮一活动总结
2014/07/08 职场文书
学习十八大的心得体会
2014/09/12 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
向国旗敬礼学生寄语大全
2014/09/30 职场文书
幼儿园母亲节活动总结
2015/02/10 职场文书
个人党性分析总结
2015/03/05 职场文书
天河观后感
2015/06/11 职场文书
幼儿园中班教育随笔
2015/08/14 职场文书
2019终止劳动合同协议书最新范本!
2019/07/09 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
windows server2016安装oracle 11g的图文教程
2022/07/15 Servers
Vue深入理解插槽slot的使用
2022/08/05 Vue.js