PHP会话变量 - 更改页面加载

时间:2016-11-24 13:48:06

标签: php session

我正在尝试让每个页面加载时会话变量在0和1之间交替。

首次加载页面

$_SESSION['turn'] = 0;

第二次

$_SESSION['turn'] = 1;

第三次

`$_SESSION['turn'] = 0;`

等等。

然后我可以在页面的后面调用该变量。

我无法弄清楚如何做到这一点。我尝试过一个简单的IF函数但无法使其工作。

2 个答案:

答案 0 :(得分:2)

首先,必须在希望使用会话数组的任何页面上启动会话。 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;
}

答案 1 :(得分:1)

在加载页面的地方尝试此操作。

$_SESSION['turn']=1-$_SESSION['turn'];

代码:

<?php
session_start();
echo $_SESSION['turn'];
$_SESSION['turn']=1-$_SESSION['turn'];
?>

编辑:RiggsFolly!isset()是正确的。我错过了它会在日志中出错。并且第一个值不是0