session_decode în PHP

Încarcă în $_SESSION datele dintr-un text în formatul sesiunilor PHP (cel produs de session_encode).

Sintaxă
session_decode(string $data): bool

Ce face session_decode

session_decode face operația inversă lui session_encode: citește textul și adaugă cheile în $_SESSION, înlocuind valorile existente cu același nume. Sesiunea trebuie să fie activă.

Datele sunt deserializate, deci nu decoda niciodată text venit de la utilizatori: deserializarea datelor nesigure poate permite executarea de cod.

Parametri

Parametru Descriere
$data Textul în formatul sesiunilor.

Ce returnează

true la succes, false la eroare.

Exemple

Exemplul 1: Restaurarea unei sesiuni salvate

<?php
session_start();

session_decode('tema|s:4:"dark";vizite|i:3;');
var_dump($_SESSION);

Rezultat în browser

array(2) {
  ["tema"]=>
  string(4) "dark"
  ["vizite"]=>
  int(3)
}

Greșeli frecvente

  • Decodezi date primite din formular sau din cookie. Deserializarea datelor nesigure este o vulnerabilitate gravă.

Comenzi înrudite

  • session_encode: Returnează datele din $_SESSION ca text serializat, în formatul în care PHP le salvează în fișierul sesiunii.
  • session_start: Pornește sau reia sesiunea vizitatorului, ca să poți păstra date între pagini în $_SESSION.