[英]How to use $this->session->set_userdata in codeigniter
[英]how can i use set_userdata in codeigniter4 for adding session data
我正在将 codeigniter 2 迁移到 codeigniter 4。我面临很多差异。 例如 set_userdata。 它在 codeigniter 4 中不可用。
我怎样才能像 codeigniter 一样在 codeigniter4 中使用 set_userdata 2. 请帮忙
根据CI doc建议您。 通过以下方式初始化 session
$session = \Config\Services::session($config); // $config is optional here
然后,
$newdata = [
'username' => 'johndoe',
'email' => 'johndoe@some-site.com',
'logged_in' => TRUE
];
$session->set($newdata);
或者
$session->set('some_name', 'some_value');
从文档中,
与任何其他变量一样,您可以简单地将数据分配给 $_SESSION 数组。 或者作为 $this->session 的一个属性。
或者,也可以使用将其分配为“用户数据”的旧方法。 但是,将包含新数据的数组传递给 set_userdata() 方法。
看起来您可以将set
命令与数组一起使用。
$newdata = [
'username' => 'johndoe',
'email' => 'johndoe@some-site.com',
'logged_in' => TRUE
];
$session->set($newdata);
或像这样使用它来设置单个值
$session->set('some_name', 'some_value');
你好,如果我能理解你的问题。 您要设置 session 数据。 以下是您将采取的措施来解决此特定问题。 使用任何这些session()
或service('session')
加载 session 库
$session = session();
$session->set('data_index', $data);
参考文档CI4 Doc
您可以将 Codeigniter4 中的 session 值设置为:
session()->set("session_name","session_value");
让我尝试向您解释简单的方法。 在 CI4 中,您需要初始化 session 库
在 Controller
$session = \Config\Services::session();
$sessionData = [
'username' => 'John Doe',
'phone' => 123545678,
'role' => 'Teacher',
'status' => 'Active'
];
$session->set($sessionData);
读取数据很简单
echo $session->get('username');
有关更多信息,请访问文档
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.