在 CodeIgniter 4 要設定 session 過期時間,可以透過 Tempdata 各別設定,基本使用方法如下:
// 'item' will be erased after 300 seconds $session->markAsTempdata('item', 300);
可以指定你要設定的 session 的 key,第二個值代表的是多久之後會刪除,單位為秒數。
也可以一次設定很多個 key,給定一樣的值或各別的值:
// Both 'item' and 'item2' will expire after 300 seconds $session->markAsTempdata(['item', 'item2'], 300); // 'item' will be erased after 300 seconds, while 'item2' // will do so after only 240 seconds $session->markAsTempdata([ 'item' => 300, 'item2' => 240, ]);
也可以在設定 session 的時候直接給定過期的時間:
$session->setTempdata('item', 'value', 300);
如果要一次設定很多個 session 的內容,可以帶入陣列:
$tempdata = ['newuser' => true, 'message' => 'Thanks for joining!']; $session->setTempdata($tempdata, null, $expire);