400 of 410 menu

Funktionen unserialize

Funktionen unserialize tager imod en serialiseret streng og returnerer den tilsvarende PHP-værdi. Som første parameter tager den imod en streng, og som anden valgfri parameter - en array med indstillinger til at styre deserialiseringsprocessen.

Syntaks

unserialize(string $data, array $options = []): mixed

Eksempel

Lad os konvertere en serialiseret streng tilbage til en array:

<?php $serialized = 'a:3:{i:0;s:1:"a";i:1;s:1:"b";i:2;s:1:"c";}'; $res = unserialize($serialized); print_r($res); ?>

Resultat af kodeudførelse:

['a', 'b', 'c']

Eksempel

Deserialisering af et objekt:

<?php class Test { public $prop = 123; } $obj = new Test(); $serialized = serialize($obj); $res = unserialize($serialized); echo $res->prop; ?>

Resultat af kodeudførelse:

123

Eksempel

Brug af indstillingen 'allowed_classes':

<?php $serialized = 'O:4:"Test":1:{s:4:"prop";i:123;}'; $res = unserialize($serialized, ['allowed_classes' => false]); var_dump($res); ?>

Resultat af kodeudførelse:

object(__PHP_Incomplete_Class)#1 (2) { ["__PHP_Incomplete_Class_Name"]=> string(4) "Test" ["prop"]=> int(123) }

Se også

  • funktionen serialize,
    som konverterer en værdi til en serialiseret streng
  • funktionen json_encode,
    som konverterer en værdi til en JSON-streng
svruroazby