在codeigniter 4中设置cookie不工作



我目前正在做一个项目,我必须将它从codeigniter版本3迁移到版本4。当设置cookie时,最初使用了以下代码:

$cookie = array(
'name'   => 'admin_id',
'value'  => $result['id'],
'expire' => '216250',
'domain' => '',
'path'   => '/',
'prefix' => '',
'secure' => FALSE
);
$this->input->set_cookie($cookie);

根据文档,在版本4中设置cookie的方法是通过以下代码:

set_cookie($cookie);

请注意,$cookie变量仍然是相同的。

这个cookie是在Model文件中设置的,然后以以下方式调用重定向:

return redirect()->to('/');

我知道cookie只在页面被重定向后设置,因此我试图在另一个控制器中检索它。但是,没有设置cookie。

use withCookies()
return redirect()->to('/')->withCookies();

见https://github.com/codeigniter4/CodeIgniter4/issues/3939