如何从数组中获取所有变量并将其作为 $_SESSION 回显?

How to get all variables from an array and echo it as a $_SESSION?

第 1 页: 在第 1 页上,我有一个 for 循环 :,其中包含如下内容:

$_SESSION['img_name'] = $img_name[$i];

当我打电话给var_dump

var_dump($_SESSION['img_name']);

我知道有 2 个字符串:

string(6) "a2.JPG" string(6) "a3.JPG"

所以我通常将 link 设为第 2 页,而不是使用 $_SESSION 我只使用 $_GET 像这样:

echo '<a href="page2.php?img='.urlencode($img_name[$i]).'">.'.htmlspecialchars($img_name[$i], ENT_QUOTES).'</a>'.'</br>';

但今天我不想那样做,我想将 $img_name[$i] 存储在 $_SESSION 中并从 $_SESSION 中获取这两个变量第 2 页.

第 2 页:

echo $_SESSION['img_name'];

但问题是,当我在 第 2 页 上回显 $_SESSION 时,它只包含来自 [=46= 的最后一个变量]array,它并没有全部回显。 如何将所有变量存储在 array?

第 2 页 var_dump 显示:

string(6) "a3.JPG"

字符串

string(6) "a2.JPG"

错过了。 :(

问题 2:

Could You tell me how can I fetch the data outside the loop? Something like: "echo $_SESSION['img_name'];" but outside the loop.

您每次都在 forloop 中覆盖会话的值

$_SESSION['img_name'] = $img_name[$i];

所以改成

$_SESSION['img_name'][] = $img_name[$i];

在第一页中,我认为 var_dump() 出现在 for 循环中。所以它来对了。

$_SESSION['img_name'][$i] = $img_name[$i]

就是您要找的。