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

I'm trying to get a session variable to alternate between 0 and 1 on each page load.

So first time page loads

$_SESSION['turn'] = 0;

Second time

$_SESSION['turn'] = 1;

Third time

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

and so on.

Then I can call that variable later in the page.

I can't work out how to do this. I've tried a simple IF function but can't get it to work.

Try this where the page is loaded.

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

code:

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

Edit : RiggsFolly !isset() is correct. mine misses it and it will give errors in log. and the first value is not 0

First the session must be started on any page wishing to make use of the session array. session_start()

Next you have to remember that initially the session variable you are using will not exist the first time you attempt to use it

So

<?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;
}