2012-01-08 11 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 
       ) 

私に何かが不足していますか?あまりにも先行しています。

答えて

5

要素のコピーを変更しています。

使用参照:

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

あなたは配列と同じではありません$順序変数、で作業しています。あなたはしたい:

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]); 
} 
関連する問題