【发布时间】:2016-12-23 23:04:17
【问题描述】:
我有一个名为 Country->Gov->Branch 的类。他们每个人都按以下顺序向另一个人返回一个数组:Country 给出 Gov 并将其与 gov 合并,gov 给出 branch 并将其与 branch 合并。当我使用 User 并将其加载到 $_session 时,分支数组是 User 类的一个属性,我确实使用数组合并将分支数组直接合并到会话以使其易于使用,因此我不必循环数组数组(只是一个主意)。 print_r($_SESSION);的结果如下
Array ( [userid] => 1
[login] => email@gmail.com
[name] => Mohamed Talaat
[group] => 0
[picture] => mac
[Branchbranchid] => 1
[Branchbranchname] => Head Office
[Branchaddress] => xxxxxx st. , xxxx
[Branchgovid] => 2
[Govgovid] => 2
[Govgovcode] => 03
[Govgovname] => Alexandria
[Govcountryid] => 1
[Countrycountryid] => 1
[Countrycountrycode] => 20
[Countrycountryname] => Egypt )
我说的是 Horay ,但是当我用下面的方式调用它时,快乐的感觉不会永远持续下去,我得到一个错误。
echo $_SESSION['Branchbranchid'];
注意:未定义索引:第 7 行 D:\xampp\htdocs\office\home.php 中的 Branchbranchid
没有任何回应
在任何代码之前,我确实在页面的第一个标题处有一个session_start();,我注意到问题发生在从键 [Branchbranchid] 开始的合并部分,因为如果我这样做 echo $_session['any element']; 就像
echo $_SESSION['name'];
在此键 ([Branchbranchid]) 之前,代码可以正常工作。我试图通过将带有键的值添加到另一个数组来转身,但我得到了相同的结果,并且出现了相同的通知,并且没有回显。我认为键存在问题,因为当我将值推送到索引数组时,它工作正常但没有键,这是一个丢失的案例......
任何想法......关于为什么以及如何避免或解决这个问题
【问题讨论】:
-
要以任何方式使用会话,您必须在要使用它的页面顶部添加
session_start(); -
你在哪里使用这个,在同一个文件或任何其他 php 文件上?
-
$_SESSION!=$_session -
我确实有一个 session_start();在页面的第一行,我确实有两个文件,首先是 index.php,我在其中初始化了 $_session 并在其中执行了 array_merge,第二个文件 home.php 我将在其中使用 $_session显示 $_session 值或使用它,当我执行
print_r($_session);时,我确实得到了上面问题中出现的结果 -
谢谢夏洛特,我确实按照你在代码中所说的 $_SESSION 使用它,我会在问题处修复它