如何在php中获取唯一数组

时间:2015-01-07 07:17:03

标签: php arrays

我是这样的数组:

Array([0] => 1,[1] => 2,[2] => 3,[3] => 3,[4] => 4,[5] => 5,[6] => 5,[7] => 6,[8] => 6,[9] => 6,[10] => 7,[11] => 8,[12] => 8,[13] => 8,[14] => 8,[15] => 9,[16] => 9,[17] => 9,[18] => 9,[19] => 9)

但我想要的结果如下:

Array([0] => 1,[1] => 2,[3] => 3,[4] => 4,[6] => 5,[9] => 6,[10] => 7,[14] => 8,[19] => 9)

这不仅消除了相同数组的值,而且显示了相同值的最后一个索引/键的值。有人可以帮帮我吗?

6 个答案:

答案 0 :(得分:1)

array_unique()

  

获取一个输入数组并返回一个没有重复值的新数组。

示例:

array_unique($your_array);

答案 1 :(得分:0)

您可以使用数组操作功能

array_unique($arr);

答案 2 :(得分:0)

通过你的

array_unique()函数可以得到一个唯一的数组值。

<?php

$data=Array(1,2,3,3,4,5,5,6,6,6,7,8,8,8,8,9,9,9,9);
echo '<pre>';
print_r($data);
$ans=array_unique($data);
print_r($ans);
echo '</pre>';
?>

答案 3 :(得分:0)

array_unique

<?php $arr=Array("[0]" => 1,"[1]" => 2,"[2]" => 3,"[3]" => 3,"[4]" => 4,"[5]" => 5,"[6]" => 5,"[7]" => 6,"[8]" => 6,"[9]" => 6,"[10]" => 7,"[11]" => 8,"[12]" => 8,"[13]" => 8,"[14]" => 8,"[15]" => 9,"[16]" => 9,"[17]" => 9,"[18]" => 9,"[19]" => 9);
var_dump($arr);
$newarr=array_unique($arr);
var_dump($newarr);
?>

答案 4 :(得分:0)

使用build in array函数。

array_unique();

给你预期的结果。查看link

答案 5 :(得分:0)

好的,我得到了我想要的答案,谢谢所有试图帮助我的人。

$str = Array('0' => 1,'1' => 2,'2' => 3,'3' => 3,'4' => 4,'5' => 5,'6' => 5,'7' => 6,'8' => 6,'9' => 6,'10' => 7,'11' => 8,'12' => 8,'13' => 8,'14' => 8,'15' => 9,'16' => 9,'17' => 9,'18' => 9,'19' => 9);

$flag = 0;
foreach($str as $key=>$value)
{
   if($flag == $value)
   {
      unset($str[$key-1]);
   }
   $flag = $value;
 }
 echo "<pre>";
 print_r($str);