php – 在登录时存储所有用户信息
发布时间:2020-12-13 17:02:25 所属栏目:PHP教程 来源:网络整理
导读:是否最好在登录时将所有用户信息存储在会话cookie中?而不是使用大量的查询 $_SESSION['id'] = mysql_result($result,'id');$_SESSION['name'] = mysql_result($result,'name');$_SESSION['email'] = mysql_result($result,'email');$_SESSION['ip'] = mysql
是否最好在登录时将所有用户信息存储在会话cookie中?而不是使用大量的查询
$_SESSION['id'] = mysql_result($result,'id'); $_SESSION['name'] = mysql_result($result,'name'); $_SESSION['email'] = mysql_result($result,'email'); $_SESSION['ip'] = mysql_result($result,'regip'); $_SESSION['groupid'] = mysql_result($result,'group_id'); $_SESSION['style'] = mysql_result($result,'style'); 或者只是在会话中存储ID然后在所有页面上查询: select * from users where id = $_SESSION['id'] 解决方法
如果你要经常使用它们,当然.虽然我要小心将所有用户数据存储在Session中.只有必要.请记住,编写良好的查询在资源上很便宜.不要试图完全避免连接数据库,只要确保当你这样做时,你就做得很好.
如果您喜欢使用memory_get_usage(),可以测试内存消耗.但请注意,会话数据存储在系统本身的平面文件中: session_start(); echo memory_get_usage(); // 87744 $_SESSION["user"] = array( "name" => "Jonathan Sampson","id" => 54680,"groupID" => 0285,"email" => "example@somesite.com","style" => "background-color:#333;color:#f1f1f1" ); echo memory_get_usage(); // 88344 所以你可以看到存储这么多数据真的非常简单. 另见:Cache data in PHP SESSION,or query from db each time? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |