PHP 8.3.4 Released!

session_cache_expire

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

session_cache_expireRitorna il valore corrente di scadenza della cache

Descrizione

session_cache_expire(int $nuova_scadenza_cache = ?): int

session_cache_expire() ritorna il valore corrente di session.cache_expire. Il valore ritornato deve essere espressio in minuti, di default 180. Se si assegna nuova_scadenza_cache , il valore corrente di scadenza della cache viene sostituito con nuova_scadenza_cache.

La scadenza della cache viene reimpostata al valore predefinito di 180 memorizzato in session.cache_limiter ad ogni richiesta di pagina. Quindi, è necessario chiamare session_cache_expire() in ogni pagina (e prima di invocare session_start()).

Example #1 session_cache_expire() esempio

<?php

/* assegna il limite della cache su 'private' */

session_cache_limiter('private');
$cache_limiter = session_cache_limiter();

/* imposta la scadenza della cache su 30 minuti */
session_cache_expire(30);
$cache_expire = session_cache_expire();

/* avvia la sessione */

session_start();

echo
"Il limite della cache ora è impostato su $cache_limiter<br />";
echo
"Le pagine di sessione nella cache scadranno dopo $cache_expire minutes";
?>

Nota: Impostazione nuova_scadenza_cache è utile soltanto, se session.cache_limiter è impostato su un valore diverso da nocache.

Vedere inoltre le impostazioni di configurazione session.cache_expire, session.cache_limiter e session_cache_limiter().

add a note

User Contributed Notes 2 notes

up
175
Anonymous
16 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.
up
0
tuncdan dot ozdemir dot peng at gmail dot com
1 month ago
Using PHP 8.2

session_start();

$result1 = session_cache_expire( 30 ); // setter, results in Warning: Session cache expiration cannot be changed when a session is active in ...

$result2 = session_cache_expire(); // getter

var_dump( $result1, $result2 ); // prints out: int(180) int(180) [note: 180 is the default value]

Because the session was already started, cache expiration could not be changed (warning message). However, the return value is NOT false, it is still the original, unchanged value!

So I do not know what is considered a failure to change the value as per the documentation (`On failure to change the value, false is returned.`).
To Top