Unserialize funksiýasy
unserialize funksiýasy serializirlenen setir kabul edýär
we degişli PHP bahasyny yzyna gaýtarýar. Ilkinji parametri hökmünde
ol setiri kabul edýär, ikinji islege bagly parametri bolsa
deserializasiýa prosesini dolandyrmak üçin opsiýalar sanawydyr.
Sintaksis
unserialize(string $data, array $options = []): mixed
Mysal
Serializirlenen setiri yzyna sanawa öwüreli:
<?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);
?>
Kody ýerine ýetirmegiň netijesi:
['a', 'b', 'c']
Mysal
Obýekti deserializasiýa etmek:
<?php
class Test {
public $prop = 123;
}
$obj = new Test();
$serialized = serialize($obj);
$res = unserialize($serialized);
echo $res->prop;
?>
Kody ýerine ýetirmegiň netijesi:
123
Mysal
'allowed_classes' opsiýasyny ulanmak:
<?php
$serialized = 'O:4:"Test":1:{s:4:"prop";i:123;}';
$res = unserialize($serialized, ['allowed_classes' => false]);
var_dump($res);
?>
Kody ýerine ýetirmegiň netijesi:
object(__PHP_Incomplete_Class)#1 (2) {
["__PHP_Incomplete_Class_Name"]=>
string(4) "Test"
["prop"]=>
int(123)
}
Şeýle-de görmeli
-
serializefunksiýasyny,
ýöne bir bahany serializirlenen setire öwürýän -
json_encodefunksiýasyny,
ýöne bir bahany JSON setirine öwürýän