doumi1884 2014-07-30 06:28
浏览 56
已采纳

我们可以在项目中使用相同的cookie和会话变量名称 - PHP吗?

Can we give same name to our cookie and session variables in the same project? Suppose we have a username stored in a cookie as "user_name" then can we have the same variable used for storing a session?

Is following possible and is OK to do so?

setcookie("user_name", $user_name, time() + 3600);

and

$_SESSION['user_name'] = $user_name;

Or will it create any problem further?

  • 写回答

4条回答 默认 最新

  • drz73366 2014-07-30 06:39
    关注

    You can do that.

    When you do:

    setcookie("user_name", $user_name, time() + 3600);
    

    A cookie is created and stored in the browser with the name user_name.

    When you do:

    $_SESSION['user_name'] = $user_name;

    A session is generated in the server which has a field called user_name. Now this session information is passed between the browser and server in the form of a cookie that only has the information pertaining to accessing the session as opposed to having all the session data in it.

    Since this session is not named, it will use the name of the default PHPSESSID

    Apart from the fact that cookies are involved in both operations they do not have anything else in common. The only time you need to be careful is if you name your session and an unrelated cookie with the same name. Values inside session are bound inside that scope and it does not matter - as in the example you gave.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?