2017-04-18 4 views
1

私は配列の配列を持っていますが、それぞれを新しいキー値を割り当てながらループしたいのです。しかし、元の配列は応答できません。ここに私の試みは、次のとおりです。forループ内にPHPの配列値を編集する

<?php 
$cards = array(
    array(
     "test" => 1 
    ),array(
     "test" => 2  
    ) 
); 

foreach($cards as $card){ 
    $card["success"] = 1; 
} 

print_r($cards); 

OUTPUT:

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

    [1] => Array 
     (
      [test] => 2 
     ) 

) 

どのように私はそれ故に「成功」​​値は、それらのそれぞれに挿入することができる方法を変更することができますか?

答えて

3

&兆候に気づく)参照によって配列の要素を渡す:

foreach($cards as &$card){ 
    $card["success"] = 1; 
} 
1

あなたはこのようにそれを使用することができます。ここでは、$keyの反復に値を挿入します。

Try this code snippet here

<?php 
ini_set('display_errors', 1); 
$cards = array(
    array(
     "test" => 1 
    ),array(
     "test" => 2  
    ) 
); 

foreach($cards as $key=> $card){ 
    $cards[$key]["success"] = 1;//Inserting value on the a key of $cards 
} 

print_r($cards); 

出力:

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

    [1] => Array 
     (
      [test] => 2 
      [success] => 1 
     ) 

) 
関連する問題