一些array_unique值是未定义的?

时间:2011-11-22 16:33:55

标签: php

我正在使用array_unique从数组中删除重复项,但即使计数器是正确的,并且元素的数量是正确的,它的一些元素也显示为未定义!

$varietals=array_unique($varietals1);

$countVarietals = count($varietals);

我用jquery列出结果

var Varietal = data.Varietal;
var countVarietal = data.countVarietal;
//  alert(countVarietal);
$("#selectVarietal").html("");
for(var i = 0; i < countVarietal; i++){

    $("#selectVarietal").append("<label><input type='checkbox' class='wineTypeCheck'  name='Varietal' value='"+Varietal[i]+"' />"+Varietal[i]+"</label><br />");
}       

有人熟悉这个吗? 提前谢谢你!

1 个答案:

答案 0 :(得分:1)

  a = array("one", "two", "two", "three")
  a = array_unique(a);
  /* will lead to:
  a[0] = "one"
  a[1] = "two"
  a[3] = "three"
  */
  a = array_values(a);

   /* Now we've got:
  a[0] = "one"
  a[1] = "two"
   a[2] = "three"
  */

因此我需要添加array_values(),以便缩小差距

    $varietals=array_values(array_unique($varietals1));

来源:http://php.net/manual/en/function.array-unique.php