我有一个奇怪的问题,我在$_SESSION
变量中存储了一些数据。问题出在第 8 行和第 9 行之间。不知何故,数据未存储在会话中。而且我不知道问题出在哪里。
将$data
变量分配给会话时,它可以工作,但是当从会话中分配某些东西时$data
,它不起作用!但是第 7 行告诉我访问$data
数组是有效的。
问题出在哪里?
这里的链接是一个例子print_r($_SESSION)
代码:
1: $ldap = new adLDAP();
2: $ldap->authenticate($username, $password);
3: $ldapUser = $ldap->user();
4: $data = $ldapUser->info($username, $this->ldapInfo);
5: $managerArr = explode(',', $data[0]['manager'][0]);
6: $managerCN = explode('=', $managerArr[0]);
7: $this->log->debug("Display Name = " . $data[0]['displayname'][0]);
8: //$_SESSION['ldap_raw'] = $data; // <--- this freakin works
9: $_SESSION[UserDetails::sessionInfoName][UserDetails::sessionInfoTitleName] = $data[0]['title'][0];
10: $_SESSION[UserDetails::sessionInfoName][UserDetails::sessionInfoTelephoneNumber] = $data[0]['telephonenumber'][0];
11: $_SESSION[UserDetails::sessionInfoName][UserDetails::sessionInfoDisplayNameName] = $data[0]['displayname'][0]);
UserDetails::sessionInfoName
并且UserDetails::sessionInfoXXXXYYYY
是在 UserDetails 类中定义的常量