如何使用$ GLOBALS跨php文件共享变量?

时间:2014-10-12 23:48:26

标签: php arrays global

我有一个文件index.php,该文件会生成一个指向我希望我的用户只能 能够访问某个$var == True的网页的链接。

我希望能够通过$ GLOBALS数组执行此操作,因为我的$ _SESSION数组已经填充了我想要进一步操作的特定类的实例。

我的index.php页面:

<?php

    $var = True;

    $GLOBALS["var"];

    echo "<p><a href='next.php'>Click to go to next page</a></p>";

?>

我的next.php页面:

<?php

        if($GLOBALS["var"] == False)
            exit("You do not have access to this page!");
        else
            echo "<p>You have access!</p>";

?>

目前,next.php正在回显退出文本。我是否正确访问/分配给$ GLOBALS数组?或者我没有正确使用它?

谢谢!

修改 所以我在这里尝试了一些建议。这是我的新index.php

<?php

    $GLOBALS["var"] = True;

    echo "<p><a href='next.php'>Click to go to next page</a></p>";

?>

我的next.php

<?php

    if($GLOBALS["var"] == False)
        exit("You do not have access to this page!");
    else
        echo "<p>You have access!</p>";

?>

但是,我仍然遇到了打印退出语句的相同问题。

1 个答案:

答案 0 :(得分:3)

为此使用会话要好得多,因为它们更安全并且为此目的而存在。我建议的方法是启动一个新的单独会话数组。

session_start();
$_SESSION['newSession']['access'] = true;

然后访问它使用相同的键/值。