数组将不会保存到SESSION PHP中


Array will not save into SESSION PHP

我有以下代码。

$getPoetry['poet'] = $_SESSION[$member]['filters']['newspaper'] = array(
    '$in' => $allFollowing
);

$getPoetry['poet']有完整的数组,而$_SESSION[$member]['filters']['newspaper']没有。

可能是什么问题?

当我打印数组时$_SESSION[$member]存在但它是一个空数组的键

试试这个

<?php   
    session_start();
    // create an array
    $my_array=array('cat', 'dog', 'mouse', 'bird', 'crocodile', 'wombat', 'koala', 'kangaroo');
    // put the array in a session variable
    $_SESSION['animals']=$my_array;
    // a little message to say we have done it
    echo 'Putting array into a session variable';
    // loop through the session array with foreach
    foreach($_SESSION['animals'] as $key=>$value)
        {
        // and print out the values
        echo 'The value of $_SESSION['."'".$key."'".'] is '."'".$value."'".' <br />';
        }
    ?>

在你的例子中,我给了变量一些值,不管你用什么

<?php
session_start();
$member = 'new';
$allFollowing = 'follower';
$getPoetry['poet'] = $_SESSION[$member]['filters']['newspaper'] = array('$in' => $allFollowing);
print_r($_SESSION[$member]['filters']['newspaper']);
print_r($getPoetry);
?>

@Yogesh Suthar的情况下,他错过了键和0不应该在会话的第一个键检查,也

<?php   
session_start();
$abcd = $_SESSION['test']['filters']['newspaper'] = array('test'=>"abcd");
print_r($_SESSION['test']['filters']['newspaper']);
print_r($abcd);
?>

工作正常。我认为你还没有开始会话使用session_start();在页面的顶部

session_start();
$abcd = $_SESSION[0]['filters']['newspaper'] = array("abcd");
print_r($_SESSION[0]['filters']['newspaper']);
print_r($abcd);

输出如下

Array ( [0] => abcd ) Array ( [0] => abcd )