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版网站缓存加快打开速度的方法分享
Jun 03 PHP
php的curl封装类用法实例
Nov 07 PHP
PHP动态页生成静态页的3种常用方法
Nov 13 PHP
php表单敏感字符过滤类
Dec 08 PHP
分析PHP中单双引号的误区和双引号小隐患
Jul 19 PHP
PHP将字符串首字母大小写转换的实例
Jan 21 PHP
MAC下通过改apache配置文件切换php多版本的方法
Apr 26 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
php+redis实现商城秒杀功能
Nov 19 PHP
Swoole实现异步投递task任务案例详解
Apr 02 PHP
PHP+mysql防止SQL注入的方法小结
Apr 27 PHP
php实现根据身份证获取精准年龄
Feb 26 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中使用与Perl兼容的正则表达式
2006/11/26 PHP
PHP数组函数array_multisort()用法实例分析
2016/04/02 PHP
php表单文件iframe异步上传实例讲解
2017/07/26 PHP
php和html的区别点详细总结
2019/09/24 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
2020/10/20 PHP
用正则xmlHttp实现的偷(转)
2007/01/22 Javascript
Use Word to Search for Files
2007/06/15 Javascript
jquery文字上下滚动的实现方法
2013/03/22 Javascript
jquery 实现两Select 标签项互调示例代码
2014/09/25 Javascript
Node.js的包详细介绍
2015/01/14 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
js+css实现的圆角边框TAB选项卡滑动门代码分享(2款)
2015/08/26 Javascript
jQuery获取checkboxlist的value值的方法
2015/09/27 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
js实现鼠标移动到图片产生遮罩效果
2017/10/21 Javascript
vue与原生app的对接交互的方法(混合开发)
2018/11/28 Javascript
Vue js with语句原理及用法解析
2020/09/03 Javascript
python实现的简单窗口倒计时界面实例
2015/05/05 Python
Python实现SVN的目录周期性备份实例
2015/07/17 Python
python基础入门学习笔记(Python环境搭建)
2016/01/13 Python
利用Python实现颜色色值转换的小工具
2016/10/27 Python
轻松理解Python 中的 descriptor
2017/09/15 Python
Python标准库使用OrderedDict类的实例讲解
2019/02/14 Python
python实现Dijkstra算法的最短路径问题
2019/06/21 Python
Python生成验证码、计算具体日期是一年中的第几天实例代码详解
2019/10/16 Python
PyCharm最新激活码(2020/10/27全网最新)
2020/10/27 Python
Web前端绘制0.5像素的几种方法
2017/08/11 HTML / CSS
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
亚马逊巴西站:Amazon.com.br
2019/09/22 全球购物
《鲁班和橹板》教学反思
2014/04/27 职场文书
效能监察建议书
2014/05/19 职场文书
学校食堂食品安全责任书
2014/07/28 职场文书
安全生产工作汇报材料
2014/10/28 职场文书
干部培训工作总结2015
2015/05/25 职场文书
忠诚教育学习心得体会
2016/01/23 职场文书