1

我有一个存储在 SESSION 中的多数组

我遍历数据以更改设置为“1”的值并将其设置为“0”

但是由于某种原因,即使它确实找到了价值,它也没有改变它。

这就是我所拥有的:

Array (
    [0] => 1 
    [1] => 0 
    [2] => admin_user
    [8] => 1 
    [3] => 2
    [4] => Array (
        [7] => Array ( 
            [0] => User1
            [1] => 1 
            [2] => 1 
            [3] => w.jpg 
            [4] => 1 
            [5] => 1 
            [6] => 500 
            [7] => 50
            [8] => 3000 
        )
        [1] => Array ( 
            [0] => User2 
            [1] => 1 
            [2] => 3 
            [3] => d.jpg 
            [4] => 1
            [5] => 0 
            [6] => 200 
            [7] => 85 
            [8] => 5000
        ) 
    )
)

因此,在 PHP 中,我试图更改位置 4 的数组中位置 5 的值。

我就是这样做的:

foreach($_SESSION['player_data'][4] as $key){
    if($key[5] == 1){
       $_SESSION['player_data'][4][$key][5] = 0;
       break;
    }
}

但它不会将它设置为 0 它保持为 1 它令人讨厌:(我哪里出错了?

4

1 回答 1

4

改成:

foreach($_SESSION['player_data'][4] as $key => $value){    
   if($value[5] == 1){
       $_SESSION['player_data'][4][$key][5] = 0;
       break;
    }
}
于 2012-06-14T22:58:32.227 回答