2009-10-03 45 views

回答

4

您不僅限於一個會話變量,您可以擁有儘可能多的所需。

session_start(); 

if (!isset($_SESSION['widget'])) { 
    $_SESSION['widget'] = 'i am changed only if there isnt already a widget session var'; 
} 

$_SESSION['someOtherVar'] = 'i am being changed on every page'; 
+0

+1:我只是寫一樣的... – jeroen 2009-10-03 21:52:01

+0

對不起球員,新秀完整的問題。剛剛在那裏測試過,它按計劃運行。所以基本上會話變量是全局的,但他們在哪裏「保持」? – 2009-10-03 22:10:58

+1

在服務器上。如果您沒有更改任何內容,php-files處理程序會將會話數據保存到由session.save_path指定的目錄中的文件中,請參閱http://docs.php.net/session.configuration#ini.session.save-path – VolkerK 2009-10-03 22:13:14

4

每當PHP頁面加載時,只需撥打session_start();即可。這將或者1.如果不存在,則開始新的會話,或者2.重新啓動之前建立的任何會話。爲了使新的會話變量,這樣做:如果你想終止會話,這樣你就可以開始一個新的

session_start(); // start or restart the session 
$_SESSION['mySessionVariableName'] = "My session variable value."; 

,你可以這樣做:

session_destroy(); 

如果你想刪除所有會話變量,但不能殺死當前會話,你可以這樣做:

session_unset(); 
1

簡單: 上紅widgets.php:

session_start(); 
$_SESSION['red-widgets'] = 1; 

上藍widgets.php:

session_start(); 
if(!$_SESSION['red-widgets']){ 
    //Joe weren't on red-widget.php, diffrent action here... 
}