2012-04-07 131 views
-1

我有一個PDO查詢返回看起來是一個數組$ pds。我可以通過這個數組循環如下:PHP PDO +複製出陣列

foreach ($pds as $row) { 

} 

我需要遍歷數組一樣第二次,但是當我這樣做似乎沒有要在陣列中的任何數據。此外,我試圖複製陣列如下:

$pds2 = $pds; 

有沒有一個技巧,我失蹤了兩次使用這個數組?

THX

代碼:

 // Remove Duplicate Locations where words are in a different order 
     $cityArray = $pds; 

     foreach ($cityArray as $data) { 
      $words = explode(' ', $data['city'] . ' ' . $data['region1'] . ' ' . $data['region2'] . ' ' . $data['region3']); 
      sort($words); 
      $cityWordsArray[$data['id']] = implode(' ', $words); 
     } 
     $cityWordsArray = array_unique($cityWordsArray); 

     foreach ($pds as $row) { 
      echo 'hi'; 
      foreach($cityWordsArray as $key=>$value) { 
       if($row['id'] == $key) { 
+1

請發表您的所有代碼。您必須對該陣列進行操作才能使其無法使用。 – kapa 2012-04-07 07:44:16

回答

1

恐怕$pds不是一個數組,而是一個PDOStatement

如果你想獲得一個數組,你應該使用fetchAll作爲一個數組來獲得結果。

在循環之前嘗試$pds = $pds->fetchAll();