Can I use array_push on a SESSION array in php?

2020-01-26 08:53发布

I have an array that I want on multiple pages, so I made it a SESSION array. I want to add a series of names and then on another page, I want to be able to use a foreach loop to echo out all the names in that array.

This is the session:

$_SESSION['names']

I want to add a series of names to that array using array_push like this:

array_push($_SESSION['names'],$name);

I am getting this error:

array_push() [function.array-push]: First argument should be an array

Can I use array_push to put multiple values into that array? Or perhaps there is a better, more efficient way of doing what I am trying to achieve?

5条回答
Evening l夕情丶
2楼-- · 2020-01-26 08:59

Try with

if (!isset($_SESSION['names'])) {
    $_SESSION['names'] = array();
}
array_push($_SESSION['names'],$name);
查看更多
混吃等死
3楼-- · 2020-01-26 09:00
 $_SESSION['total_elements']=array();
 array_push($_SESSION['total_elements'], $_POST["username"]);
查看更多
来,给爷笑一个
4楼-- · 2020-01-26 09:07

Try this, it's going to work :

session_start();

if(!isset($_POST["submit"]))
{
    $_SESSION["abc"] = array("C", "C++", "JAVA", "C#", "PHP");
}

if(isset($_POST["submit"]))
{
    $aa = $_POST['text1'];

    array_push($_SESSION["abc"], $aa);

    foreach($_SESSION["abc"] as $key => $val)
    { 
        echo $val;
    }
}
查看更多
Anthone
5楼-- · 2020-01-26 09:18

Yes, you can. But First argument should be an array.

So, you must do it this way

$_SESSION['names'] = array();
array_push($_SESSION['names'],$name);

Personally I never use array_push as I see no sense in this function. And I just use

$_SESSION['names'][] = $name;
查看更多
乱世女痞
6楼-- · 2020-01-26 09:18
<?php
session_start();

$_SESSION['data']= array();
$details1=array('pappu','10');
$details2=array('tippu','12');

array_push($_SESSION['data'],$details1);
array_push($_SESSION['data'],$details2);

foreach ($_SESSION['data'] as $eacharray) 
{
 while (list(, $value) = each ($eacharray)) 
    {
        echo "Value: $value<br>\n";
    }
}
?>

output

Value: pappu
Value: 10
Value: tippu
Value: 12

查看更多
登录 后发表回答