2011-11-22 3 views
0

배열에서 중복을 제거하기 위해 array_unique를 사용하고 있지만 카운터가 올바르며 요소의 수가 올바르더라도 그 요소 중 일부는 정의되지 않은 것으로 표시됩니다!일부 array_unique 값은 정의되지 않았습니까?

$varietals=array_unique($varietals1); 

$countVarietals = count($varietals); 

나는이 잘 알고

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 />"); 
}  

누구 jQuery로 결과를 나열하는거야? 미리 감사드립니다. http://php.net/manual/en/function.array-unique.php

+0

당신이 jQuery를에 PHP 자체보다는보고의 데이터를보고 시도 해 봤나 : – emaillenin

+0

아니, PHP 스크립트가 들어있는 빈 페이지에 놓여 있기 때문에 지금은 시도해 보겠습니다. – Shpat

+0

그래, PHP에서만 잘 작동합니다. 문제는 색인 생성과 함께 발생합니다. – Shpat

답변

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" 
    */ 

따라서 나는 격차를

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

소스를 종료하기 위해, array_values ​​()를 추가 할 필요가?

관련 문제