dongraa1986 2012-06-14 22:53
浏览 13
已采纳

检查和更改数组中的值

I have a multi-array stored in a SESSION

I loop through the data in order to change a value which is set to "1" and set it to "0"

But for some reason its not changing it even though it does find the value.

This is what i have:

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
        ) 
    )
)

So in PHP I'm trying to change the value of position 5 in the arrays at position 4.

This is how i did it:

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

But it will not set it to 0 it stays as 1 its annoying :( where am i going wrong?

  • 写回答

1条回答 默认 最新

  • dongzhoutuo0883 2012-06-14 22:58
    关注

    Change to:

    foreach($_SESSION['player_data'][4] as $key => $value){    
       if($value[5] == 1){
           $_SESSION['player_data'][4][$key][5] = 0;
           break;
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用