2012-01-08 34 views
0

這是我的代碼:重點保持舊的名稱重命名後

foreach ($all_orders as $order){//the $all_orders array contains a number of arrays, so it's a multidimensional array 

$order["Order Rank"]=$order[0]; 
unset($order[0]); 
} 

與新的密鑰重命名鍵,當我打印後陣:

print_r($all_orders); 

我得到了舊密鑰名字(即0):

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

爲什麼它不是:

Array 
    (
     [0] => Array 
      (
       ["Order Rank"] => 1 
       ) 

我錯過了什麼? thanx提前。

回答

5

您正在修改元素的副本

使用引用:

foreach ($all_orders as &$order) { 
    //... 
} 
1

您與$ order變量,這是不一樣的陣列工作。您要:

foreach ($all_orders as $key => $order){//the $all_orders array contains a number of arrays, so it's a multidimensional array 

$all_orders[$key]["Order Rank"]=$order[0]; 
unset($all_orders[$key]); 
}