2014-03-07 66 views
1

下面是詳細信息,現在我所做的是網頁從URL獲取gameNo並將其用於各種功能。 (我從各種形式發送它)。PHP在網站中聲明「全局」變量的最佳方式

我想知道的是,我怎樣才能使它,例如當用戶選擇一個gameNo將永遠被設置,直到我再次解除它。無論是通過網址或其他方式。

是這樣的可能與$_SESSION

回答

2

是的,而不是使用global你可以很好地將它保存在一個$_SESSION變量,因爲這是一個超全局數組,它可以在函數或嵌套函數下訪問。

<?php 
session_start(); 
if(isset($_REQUEST['gameNo'])) 
{ 
$_SESSION['gameNo'] = $_REQUEST['gameNo']; 
} 

function showVal() 
{ 
echo $_SESSION['gameNo']; 
} 

showVal(); //"prints" the value of gameNo 
+0

我能在登錄後設置一個$ _SESSION變量嗎? – LefterisL

+0

只是爲了你的理解做了一個簡單的例子。是的,你可以。 –

+1

將它放在會話中是最好的地方,您應該可以使用$ _SESSION同時登錄數據和應用程序數據。關於$ _SESSION的好處是,用戶無法看到它或改變它 - 對於作爲表單組件發送的數據而言,這是不正確的。要警告的是,如果你發送gameNo給用戶讓他們回傳,有人可能會開始篡改他們的GameNo。最好是在會議中直接存儲_all_。無論如何你都知道這場比賽 - 他們不知道。 –