会话还是FileCache?哪一个更好用?
例如,当用户登录时,我想保存一些数据,如用户名,密码,ID,详细信息等,只要他没有注销。
我可以将这些数据保存在某个文件中。我也可以把它保存在会议中。
我该怎么办?
答案 0 :(得分:2)
将其保存在会话中。它存储在内存中,比文件更快,通常更安全。 通常,您不会在会话中存储密码,因为一旦用户离开网站,密码就会被删除。密码通常存储在数据库中,有时存储在文件中,但密码应始终加密。使用md5($ password。$ email)或类似的东西。 json数据格式使这很简单。
$user['temp_password'] = md5($user['password'].$user['email']);
$user['id'] = 45;
file_put_contents('user_settings.json',json_encode($user));
答案 1 :(得分:1)
表现最佳的解决方案是使用会话,将会话save_handler设置为memcached。
首先,安装memcached
apt-get install memcached
apt-get install php5-memcache
然后,编辑你的php.ini以写入memcached而不是文件
session.save_handler = memcache
session.save_path = "tcp://localhost:11211"
最后
sudo /etc/init.d/apache restart
然后,当您对$_SESSION
进行读写操作时,它将使用Memcached
答案 2 :(得分:1)
文件或会话缓存是如此相似,因为会话也写在文件中,但实际上会话更实用,更容易使用,我更喜欢内存缓存,像Mysql内存引擎或APCU。只试一次。