Ce face session_register_shutdown
Când folosești un handler de sesiune propriu, obiectele (de exemplu conexiunea la baza de date) pot fi distruse la finalul scriptului înainte ca PHP să salveze sesiunea. session_register_shutdown pune session_write_close în lista funcțiilor de închidere, astfel încât salvarea să ruleze cât obiectele încă există.
session_set_save_handler cu un obiect face asta automat (al doilea parametru, $register_shutdown, este implicit true).
Ce returnează
Nimic.
Exemple
Exemplul 1: Salvare garantată la final
<?php
session_start();
session_register_shutdown();
$_SESSION["ultima_pagina"] = "/contact/";
echo "Pagina se termină; sesiunea va fi salvată la oprirea scriptului.";
Rezultat în browser
Pagina se termină; sesiunea va fi salvată la oprirea scriptului.
Greșeli frecvente
- O apelezi „de siguranță” fără handler propriu. Pentru stocarea implicită în fișiere nu este necesară.
Comenzi înrudite
session_set_save_handler: Înlocuiește stocarea sesiunilor cu funcții proprii, de exemplu pentru a le salva în baza de date.session_write_close / session_commit: Salvează datele sesiunii și o închide, ca alte cereri ale aceluiași vizitator să nu mai aștepte după ea.