2012-02-16 67 views
0

我试图重新格式化/重新排序从mysql_fetch_array()得到的数组结果,以提供更简单的数组来处理。用于array_diff()的mysql_fetch_array()的格式化结果

在瞬间从数据库中检索结果我使用一类,这是否:

$return = array(); 
while ($row = mysql_fetch_array($this->query_result, MYSQL_NUM)) {    
    array_push($return, $row); 
} 

..this功能输出数组:

Array 
(
[0] => Array 
    (
     [0] => 2 
     [1] => Floral 
    ) 

[1] => Array 
    (
     [0] => 5 
     [1] => Occasion 
    ) 

) 

不知何故,我想实际输出这:

Array 
(
    [2] => Floral 
    [5] => Occasion 
) 

我不能让我的头在附近!帮帮我!

回答

1

试试这个

foreach($return as $result){ 
     $final[$result[0]] = $result[1]; 
    } 
+0

与上面相同的想法,但感谢您使用我的数组名称等。 – 2012-02-16 09:06:59

1

这将工作

foreach ($array as $value){ 
     $result[$value[0]] = $value[1]; 
} 
+0

感谢那 – 2012-02-16 09:07:25

1

可能:

 $rows = array(); 
     $row = array(); 

     while($fetch = mysql_fetch_assoc($result)){ 

      while(list($field, $val) = each($fetch)){ 

       $row[$field] = $val; 

      }//end while 

      $rows[] = $row; 

     }//end while 

     return $rows; 
+0

感谢队友,想我会与上述虽然。 – 2012-02-16 09:07:15

0

Basicaly你需要做的是这样的:

Array[ index ] = value;