PHP中的数组复制
我正试图将我的帖子数组保存到会话数组中,这样我就可以在网站的其他页面中使用它 当我这样做的时候PHP中的数组复制,php,Php,我正试图将我的帖子数组保存到会话数组中,这样我就可以在网站的其他页面中使用它 当我这样做的时候 $_SESSION = $_POST; 它不起作用 另外,下面的代码也给出了一个错误,并且没有复制它 foreach($_POST as $element){ $_SESSION[] = $element; } $\u会话无法处理数字键;它必须是关联数组。也就是说,如果你这样做了 $_SESSION[] = "foo"; 与您在foreach循环中所做的一样,它将像在任何其他数组中一样创建一
$_SESSION = $_POST;
它不起作用
另外,下面的代码也给出了一个错误,并且没有复制它
foreach($_POST as $element){
$_SESSION[] = $element;
}
$\u会话
无法处理数字键;它必须是关联数组。也就是说,如果你这样做了
$_SESSION[] = "foo";
与您在foreach循环中所做的一样,它将像在任何其他数组中一样创建一个新的数字键(例如,$\u SESSION[0]==“foo”
),但PHP在保存会话时将跳过该键。您会收到“通知”级别的警告,如“跳过数字键0”。因此,下次读取$\u会话
数组时,它将不包含任何数字键
因此必须使用字符串索引,如:
$_SESSION['POST'] = $_POST;
这应该行得通
您还应该能够执行
$\u SESSION=$\u POST
并覆盖整个$\u SESSION
数组。我说不出为什么这样不行。但我也不明白你为什么要这么做。如果您想将$\u SESSION
用于其他任何内容(如实际会话数据),则不能让代码随意地用post数据覆盖整个阵列。最好只使用上面这样的字符串索引来存储post数据。$\u SESSION
无法处理数字键;它必须是关联数组。也就是说,如果你这样做了
$_SESSION[] = "foo";
与您在foreach循环中所做的一样,它将像在任何其他数组中一样创建一个新的数字键(例如,$\u SESSION[0]==“foo”
),但PHP在保存会话时将跳过该键。您会收到“通知”级别的警告,如“跳过数字键0”。因此,下次读取$\u会话
数组时,它将不包含任何数字键
因此必须使用字符串索引,如:
$_SESSION['POST'] = $_POST;
这应该行得通
您还应该能够执行
$\u SESSION=$\u POST
并覆盖整个$\u SESSION
数组。我说不出为什么这样不行。但我也不明白你为什么要这么做。如果您想将$\u SESSION
用于其他任何内容(如实际会话数据),则不能让代码随意地用post数据覆盖整个阵列。最好只使用如上所述的字符串索引来存储post数据。那么我不能直接将值存储在$\u会话数组中吗?在本例中,我们存储的是一个数组。告诉我们可以使用$array[]=value语法来复制值。所以我不能直接将值存储在$\u会话数组中吗?在本例中,我们存储的是一个数组。说明我们可以使用$array[]=value语法来复制值。