session_cache_expire
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
session_cache_expire — 返回当前缓存的到期时间
说明
session_cache_expire(string
$new_cache_expire
= ?): int
session_cache_expire() 返回
session.cache_expire
的设定值。
请求开始的时候,缓存到期时间会被重置为 180,并且保存在 session.cache_expire 配置项中。 因此,针对每个请求,需要在 session_start() 函数调用之前 调用 session_cache_expire() 来设置缓存到期时间。
参数
-
new_cache_expire
-
如果给定
new_cache_expire
,就使用new_cache_expire
的值设置当前缓存到期时间。注意: 仅在
session.cache_limiter
的设置值 不是nocache
的时候, 才可以设置new_cache_expire
参数。
返回值
返回 session.cache_expire
的当前设置值,
以分钟为单位,默认值是 180 (分钟)。
范例
示例 #1 session_cache_expire() 示例
<?php
/* 设置缓存限制为 “private” */
session_cache_limiter('private');
$cache_limiter = session_cache_limiter();
/* 设置缓存过期时间为 30 分钟 */
session_cache_expire(30);
$cache_expire = session_cache_expire();
/* 开始会话 */
session_start();
echo "The cache limiter is now set to $cache_limiter<br />";
echo "The cached session pages expire after $cache_expire minutes";
?>

User Contributed Notes 3 notes
Anonymous ¶
14 years ago
The manual probably doesn't stress this enough:
** This has nothing to do with lifetime of a session **
Whatever you set this setting to, it won't change how long sessions live on your server.
This only changes HTTP cache expiration time (Expires: and Cache-Control: max-age headers), which advise browser for how long it can keep pages cached in user's cache without having to reload them from the server.
lance_rushing at hotmail dot com ¶
17 years ago
I've encountered the same problem of loosing focus when using IE and a javascript window.location.refresh/replace().
After fusing around I found that a <meta http-equiv="refresh" content="600"> works without move the focus on the parent frame's form. The down side is loading up the browser history and an annoying 'click' in IE on the page load.
WooDzu ¶
8 years ago
Just to make things clear. If session.cache_limiter is set to private the following header will be sent in HTTP response:
Cache-Control private, max-age=10800, pre-check=10800
Where 10800 is the amount of seconds - default value of 180 minutes set by session.cache_expire which you are enabled to change with session_cache_expire() on run-time
备份地址:http://www.lvesu.com/blog/php/function.session-cache-expire.php