2012-10-29 102 views
0

array_unique是通過傳遞數組名作爲參數來使用的。我如何參考整個數組? - php

但據所有研究了網上的例子去,就說明首先被分配到當時的一個變量數組,他們被實例化,就像這樣:

$var1 = $array['val1', 'val2', 'val3'] 

唯一的問題是,我是通過循環一次賦值我的數組1的值,所以我不知道如何將我的數組作爲一個整體分配給一個變量。

那麼我怎麼能表示整個數組要麼要麼放入一個變量,要麼直接作爲array_unique的參數傳遞,而不必引用特定的數組值?

編輯:添加了數組值被實例化的循環,按要求。

$productsQueryResult = mysql_query($productsQuery); 
     while ($row = mysql_fetch_row($productsQueryResult)) 
      { 
       $array[$i] = $row[0]; 
       $i++; 
      } 
+0

你可以告訴我你的循環代碼在哪裏分配數組值? –

+0

感謝您的領導! – user1299028

回答

1

只需通過名稱陣列作爲參數:

array_unique($array); 
+0

這很簡單,我應該想到,哈哈。你爲了簡單而得到我的投票。 – user1299028

0

雖然循環,可以追加該值作爲該陣列的作爲最後一個元素:

loop-statement 
{ 
    ... 

    $arr[] = value; 

    ... 
} 

然後,可以使用$arr變量在任何陣列處理功能。

0
$productsQueryResult = mysql_query($productsQuery); 

$array = []; 

while ($row = mysql_fetch_row($productsQueryResult)) 
{ 
    $array[] = $row[0]; 
} 

$unique_array = array_unique($array); 
0

嘗試此。

$productsQueryResult = mysql_query($productsQuery); 
$temp = array(); 
while ($row = mysql_fetch_row($productsQueryResult)) 
{ 
    //process $row value 
    array_push($temp, $row[0]); 
} 

$newarray = array_unique($temp);