• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • session_cache_expire()

    (PHP 4 >= 4.2.0, PHP 5, PHP 7)

    返回当前缓存的到期时间

    说明

    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的值设置当前缓存到期时间。

    Note:仅在session.cache_limiter的设置值不是nocache的时候,才可以设置$new_cache_expire参数。

    返回值

    返回session.cache_expire的当前设置值,以分钟为单位,默认值是 180 (分钟)。

    范例

    Example #1session_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";
    ?>
    

    参见

    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.
    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.
    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