究竟何時何地在PHP中使用session_start()
?何時何地使用session_start?
例如,假設我有一個登錄腳本,它設置了一個會話變量來告訴用戶是否已登錄。我必須將session_start()
放在腳本的頂部,還是隻在實際設置之前會話變量,如果登錄成功?
<?php
// session_start(); here?
if (login($username, $password)) {
// session_start(); or here?
$_SESSION["username"] = $username;
}
?>
另一種情況是這樣的,根據W3Schools的
注:的session_start()函數必須是文檔中的第一件事情。在任何HTML標籤之前。
至於你的問題,你可以在任何你想要的地方開始會話,但要注意會話__必須在任何輸出之前開始。所以它被認爲是在頁面頂部開始會話的合理方法。 –
在使用任何會話變量之前,您應該開始會話。 –
您也只能調用'session_start()'一次。多次調用會產生錯誤。 – Mike