将SESSION变量存储为CONSTANTS

时间:2014-12-02 11:30:15

标签: php arrays constants session-variables

这是一个更普遍的问题,而不是其他任何事情,但会有兴趣听听普遍的共识可能是什么。

我像往常一样将用户会话数据存储在会话用户数组中。显然,我可以直接在包含session_start()的每个页面上访问该数组。但是,我希望能够使用简单变量访问会话项,而不是每次都引用该数组。真正的原因是我不是打字,而是更简洁的代码。

我想在每个页面顶部包含一个文件,将每个会话变量定义为常量,然后我可以引用常量而不是数组。

如果有多个用户登录,这会起作用还是会引起问题?

谢谢, ģ

1 个答案:

答案 0 :(得分:0)

是的,它会起作用!但我认为这不是一个好主意/它是不必要的。

作为一个有效的例子:

的index.php:

<?php

    session_start();
    $_SESSION['username'] = "myuser1233";

    require_once("config.php");
    echo USERNAME;

?>

的config.php:

<?php

    //session_start(); you would have to start the session if you don't start the session in the file which includes this one
    define("USERNAME", $_SESSION['username']);

?>

输出:

myuser1233

(我会使用会话本身或使用会话值创建一个类,因为如果值发生变化你会怎么做?你不能覆盖常量!)