禁用$ _SESSION数组内的排序

时间:2014-04-11 14:22:20

标签: php arrays session

我有一个会话变量,在打印时看起来像这样:

Array
(
    [cart_4] => 1
    [cart_8] => 1
    [cart_9] => 2
    [cart_18] => 1
)

问题是,我没有按顺序添加东西,但由于键,它总是有这个顺序。那么是否可以将会话数组中的项保持为添加方式,而不是像这样?

在这个特定的例子中,我最后添加了cart_8,你可以看到它在列表中排名第二。

1 个答案:

答案 0 :(得分:1)

您必须拼接数组或对数组进行排序。数组的顺序是添加元素的顺序:

$a['cart_9'] = 2;
$a['cart_18'] = 1;
$a['cart_4'] = 1;
$a['cart_8'] = 1;

print_r($a);

Array
(
    [cart_9] => 2
    [cart_18] => 1
    [cart_4] => 1
    [cart_8] => 1
)

即使是数字索引数组:

$a[9] = 2;
$a[18] = 1;
$a[4] = 1;
$a[8] = 1;

print_r($a);

Array
(
    [9] => 2
    [18] => 1
    [4] => 1
    [8] => 1
)