【问题标题】:remove and update array [closed]删除和更新数组[关闭]
【发布时间】:2013-06-08 11:39:52
【问题描述】:

我有这个代码

$_SESSION['id'][] = $link;

这是真的,结果是这样的

Array ( [id] => Array ( [0] => 4 [1] => 3 [2] => 2 [3] => 1 [4] => 4 [5] => 4 [6] => 1 [7] => 1 [8] => 1 [9] => 1 [10] => 1 [11] => 1 [12] => 1 ) ) 

我想显示数组中的每个索引

foreach($_SESSION as $key=>$value){
    echo $key;
    echo $value;
    echo $_SESSION[$key][$value];
    echo '<br />';
}

怎么办?

这是 foreach 的结果

id Notice: Array to string conversion in ajax\ajax.php on line 18
Array Warning: Illegal offset type in ajax\ajax.php on line 19

第 18 行和第 19 行

echo $value;
echo $_SESSION[$key][$value];

【问题讨论】:

  • 只循环遍历 $_SESSION['id'] 数组而不是 $_SESSION 数组

标签: php arrays session foreach


【解决方案1】:

只需遍历 $_SESSION['id'] 数组而不是 $_SESSION 数组

foreach($_SESSION[id] as $value){
    echo $value;
    echo '<br />';
}

【讨论】:

    【解决方案2】:

    我认为你在错误的数组级别循环,因为你需要获取 id

    只需更改为

    foreach($_SESSION['id'] as $key=>$value){
        echo "$key=>$val" . "<br>";
    }
    

    【讨论】:

      【解决方案3】:

      是吗?

      foreach($_SESSION['id'] as $key=>$value){
          echo $key;
          echo $value;
          echo "$key:$value";
          echo '<br />';
      }
      

      【讨论】:

        【解决方案4】:

        $_SESSION['id'] 是一个数组。但是,如果您想迭代 $_SESSION 中的所有内容,我认为这应该会有所帮助!

        foreach($_SESSION as $key => $value)
        {
            if(is_array($value))
            {
                foreach($value as $k => $v)
                {
                   echo $key."[".$k."] = ".$v ;
                }
            }else{
                echo $key." = ".$value;
            }
        
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-09-24
          • 2014-01-03
          • 1970-01-01
          • 1970-01-01
          • 2022-11-24
          • 1970-01-01
          • 2014-09-17
          相关资源
          最近更新 更多