如何将新数组值推送到PHP会话数组?

时间:2013-12-31 18:36:27

标签: php arrays wordpress session array-push

我有以下粗略的代码:

$_SESSION['ids'] = array('strawberry', 'banana', 'apple');

并希望在条件上插入一些值(当某人点击某个按钮等时)。

array_push($_SESSION['ids'], 'orange');

但它似乎不起作用?

当我查看 var_dump'时,原始数组包含' strawberry ',' banana ',' apple ' ed 查看它,但' orange '不存在?

8 个答案:

答案 0 :(得分:5)

我在PHP 5.4上测试了以下代码:

session_start();
$_SESSION['ids'] = array('strawberry', 'banana', 'apple');
array_push($_SESSION['ids'], 'orange');
var_dump($_SESSION['ids']);

输出如下:

array(1) { ["ids"]=> array(4) { [0]=> string(10) "strawberry" [1]=> string(6) "banana" [2]=> string(5) "apple" [3]=> string(6) "orange" } }

答案 1 :(得分:2)

即使没有开始会话,您使用的代码也应该完美无缺。仍然给你一系列陈述。

<?php
    $_SESSION['ids'] = array('strawberry', 'banana', 'apple');
    array_push($_SESSION['ids'], 'mango');
    var_dump($_SESSION);
?>

O / P

array(1) { ["ids"]=> array(4) { [0]=> string(10) "strawberry" [1]=> string(6) "banana" [2]=> string(5) "apple" [3]=> string(5) "mango" } }

<强> phpfiddle demo

答案 2 :(得分:2)

简单,取一个数组元素。在下面的代码中,我将一个session元素作为数组元素。使用array_push我们可以添加元素。并且不要忘记开始会话。

 $_SESSION['total_elements']=array();
 array_push($_SESSION['total_elements'], $_POST["username"]);

答案 3 :(得分:1)

如评论中所述,您可以将某些内容推送到$_SESSION['ids']数组,如:

$_SESSION['ids'][] = 'orange';

http://uk1.php.net/array_push

答案 4 :(得分:1)

试试这个

$_SESSION['ids'] = array('strawberry', 'banana', 'apple');
$_SESSION['ids'][] = 'orange'; 

经过测试及其工作

答案 5 :(得分:0)

你可以这样做:

$_SESSION['ids'] [] = 'orange';

答案 6 :(得分:0)

$_SESSION不像其他变量那样超级全局。关于php会话处理的快速浏览在here给出,基本上你必须调用session_start来初始化你的会话,然后才能正确访问该数组以进行后续的写/读。

答案 7 :(得分:0)

试试这个:

<?php
        $_SESSION['ids'][] = array('strawberry', 'banana', 'apple');
?>

always use bracket when assigning values to array element.

谢谢!