我試圖讓每個頁面加載時會話變量在0和1之間變化。PHP會話變量 - 頁面加載時更改
所以第一次加載頁面
$_SESSION['turn'] = 0;
第二次
$_SESSION['turn'] = 1;
第三次
`$_SESSION['turn'] = 0;`
等。
然後我可以稍後在頁面中調用該變量。
我無法解決如何做到這一點。我已經嘗試了一個簡單的IF函數,但無法讓它工作。
我試圖讓每個頁面加載時會話變量在0和1之間變化。PHP會話變量 - 頁面加載時更改
所以第一次加載頁面
$_SESSION['turn'] = 0;
第二次
$_SESSION['turn'] = 1;
第三次
`$_SESSION['turn'] = 0;`
等。
然後我可以稍後在頁面中調用該變量。
我無法解決如何做到這一點。我已經嘗試了一個簡單的IF函數,但無法讓它工作。
試試這個頁面加載的地方。
$_SESSION['turn']=1-$_SESSION['turn'];
代碼:
<?php
session_start();
echo $_SESSION['turn'];
$_SESSION['turn']=1-$_SESSION['turn'];
?>
編輯:RiggsFolly isset()函數是正確的。我錯過了它,它會給日誌中的錯誤。並且第一個值不是0
首先會話必須在希望使用會話數組的任何頁面上啓動。 session_start()
接下來你要記住,最初您正在使用的會話變量將不存在你第一次嘗試使用它
所以
<?php
session_start();
if (!isset($_SESSION['turn'])) {
// does not exist yet, so create with 0
// you may want to initialize it to 1, thats up to you
$_SESSION['turn'] = 0;
} else {
$_SESSION['turn'] = $_SESSION['turn'] == 0 ? 1 : 0;
}
完美!謝謝! – doorad
這將錯誤時運行的第一次作爲'turn'鍵的訪客將不存在。 –