如何解决带有会话数据的 Foreach
我知识不多,转过身来,却遇到了下面这个问题,在我看来似乎很简单,但是我没有找到答案或例子。如果你能帮助我,请。
我在 paeg access.PHP 上得到了 5 个项目的列表
<?PHP
session_start ();
foreach($followers as $value){
$_SESSION['username_recente'] = $value['username'];
$_SESSION['full_name_recente'] = $value['full_name'];
$_SESSION['profile_pic_url_recente'] = $value['profile_pic_url'];
$_SESSION['followed_by_viewer_recente'] = $value['followed_by_viewer'];
}
把这个还给我:
Username: johndoe1
Fullname: john doe 1
profile_pic: http://....
followed: true
Username: johndoe2
Fullname: john doe 2
profile_pic: http://....
followed: true
I have 5 results of these.
通过简单的回声,在同一页面上,我得到了我想要的 5 个项目。
但是,在下一页 index.PHP 中,只有列表中的第一项。
index.PHP
<?PHP
foreach ($_SESSION as $key => $value) {
print $key . '<br>';
print $value;
}
在 index.PHP 中只返回 1 个结果
Username: johndoe1
Fullname: john doe 1
profile_pic: http://....
followed: true
我是否正确使用了这些功能?我不这么认为。 请帮帮我。
解决方法
您只使用这些键创建了一个维度,因此例如 $_SESSION['username_recente']
每次通过循环都会被覆盖,并且只有一个。您将需要某种多维数组。下面是一个类似于如何返回数据库行的示例:
foreach($followers as $key => $value) {
$_SESSION[$key]['username_recente'] = $value['username'];
$_SESSION[$key]['full_name_recente'] = $value['full_name'];
$_SESSION[$key]['profile_pic_url_recente'] = $value['profile_pic_url'];
$_SESSION[$key]['followed_by_viewer_recente'] = $value['followed_by_viewer'];
}
那么:
//required
session_start();
foreach ($_SESSION as $array) {
foreach($array as $key => $value) {
print "$key : $value<br>";
}
}
如果您可以在 $followers
中使用与 $_SESSION
相同的键,那么对于第一页,只需:
$_SESSION = $followers;
//or better
$_SESSION['followers'] = $followers;
然后在下一页循环 $_SESSION['followers']
。
感谢帮助评论,他们非常有帮助,但我设法解决了以下问题:
保存会话数据:
$_SESSION['array'] = $followers;
下一页,只是:
foreach ($_SESSION['array'] as $value) {
// values...
}
非常喜欢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。