0
我已經查看了我的問題的現有答案。類不保留受保護的值
我的權利,通過過程中回顯的價值和權利,直到在「標題(「位置」指令值保持不變。
我不認爲這是一個序列化問題,建議類似問題...
下面是類的相關位:
class clsSetUser {
protected $UserID = 0;
public function initUser($id) {
// get user details from database
$this->setUserID($id);
// etc...
}
private function setUserID($value) { $this->UserID = $value; }
public function getUserID() { return $this->UserID; }
}
的common.php:
if(unset($clsUser)) $clsUser = new clsSetUser;
登錄-exec.php:
$clsUser->initUser($id);
header("Location: somewhere.php");
somewhere.php:
echo $clsUser->getUserID();
// here it equals 0
什麼想法? 「標題」序列化的一切?
高爐 - 我曾希望避免使用$ _SESSION太多。每當我打開一個新頁面時,不斷點擊數據庫是不合邏輯的。感謝您的信息。 –
爲什麼你想避免碰到用戶對象的數據庫? 如果用戶/會話表得到正確索引,獲取用戶對象將不會花費任何時間。否則,您可以嘗試將所需的用戶信息存儲在Cookie中,但隨後將在每個請求中將數據傳輸到服務器。這可能會增加頁面的加載時間。 – EWit
這不僅僅是用戶對象,它是數據庫對象,以及不會改變和來自ini文件的各種值。這都是增加處理時間,應該只執行一次。我有一個非常大的應用程序,數百頁。我曾希望構建一個完整的面向對象系統,但顯然不是在PHP中,如果每次發出頭文件指令時類都被破壞,我不能這樣做...... –