2013-04-29 37 views
0

我在那裏,我通過從DB在MYSQL結果集循環的狀況的assoc命令數組值:改變在PHP循環,其中關鍵等於什麼

$result = mysql_query("SELECT * FROM orders ORDER BY repID") or die('Query failed!'); 
while(false !== ($row = mysql_fetch_assoc($result))) { 

    if(!$flag) { 
     // display field/column names as first row 
     fputcsv($out, array_keys($row), ',', '"'); 
     $flag = true; 
    } 

    array_walk($row, 'cleanData'); 

    fputcsv($out, array_values($row), ',', '"'); 
} 

所以這樣就會打印出數組鍵作爲列標題第一行。

在一些行中,我有直接從表中取出的ID,所以我需要用函數替換特定行中的值,以便在數據庫查詢中使用給定的ID作爲搜索參數。

我只是不能找到一種方法來更改循環內特定列的數組值...任何想法?

+1

'$ row ['ID'] ='new value''? – 2013-04-29 14:23:00

+0

你應該可以使用'array_walk'來做這個... – raidenace 2013-04-29 14:23:23

+0

'cleanData'方法定義是怎樣的呢?你是通過值還是通過引用傳遞'$ row'? – Corina 2013-04-29 14:29:05

回答

1

您可以使用符號修飾符與foreach循環如下。

$nameArray = array('test1', 'test2', 'test1');  

foreach ($nameArray as &$value) 
    { 
     if ($value === "test1") 
     { 
      $value = 'test2'; 
     } 
    } 
相關問題