ဖန်ရှင် unserialize
ဖန်ရှင် unserialize သည် စီးရီးအဖြစ်ပြောင်းထားသော စာကြောင်းတစ်ခုကို လက်ခံပြီး သက်ဆိုင်ရာ PHP တန်ဖိုးကို ပြန်လည်ပေးပို့သည်။ ၎င်း၏ ပထမ ပါရာမိတ်အနေနှင့် စာကြောင်းတစ်ခုကို လက်ခံပြီး၊ ဒုတိယ မဖြစ်မနေ မလိုအပ်သော ပါရာမိတ်အနေနှင့် ဒီစီးရီးအဖြစ်ပြောင်းခြင်း ဖြစ်စဉ်ကို ထိန်းချုပ်ရန် ရွေးချယ်စရာများ အခင်းအကျင်းကို လက်ခံသည်။
ဝါကျဖွဲ့ထုံး
unserialize(string $data, array $options = []): mixed
နမူနာ
စီးရီးအဖြစ်ပြောင်းထားသော စာကြောင်းကို အခင်းအကျင်းအဖြစ် ပြန်လည်ပြောင်းလဲကြရအောင်။
<?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);
?>
ကုဒ် အကောင်အထည်ဖော်မှု ၏ ရလဒ်။
['a', 'b', 'c']
နမူနာ
အော့်ဂျက်တ် တစ်ခုကို ဒီစီးရီးအဖြစ်ပြောင်းခြင်း။
<?php
class Test {
public $prop = 123;
}
$obj = new Test();
$serialized = serialize($obj);
$res = unserialize($serialized);
echo $res->prop;
?>
ကုဒ် အကောင်အထည်ဖော်မှု ၏ ရလဒ်။
123
နမူနာ
ရွေးချယ်စရာ 'allowed_classes' ကို အသုံးပြုခြင်း။
<?php
$serialized = 'O:4:"Test":1:{s:4:"prop";i:123;}';
$res = unserialize($serialized, ['allowed_classes' => false]);
var_dump($res);
?>
ကုဒ် အကောင်အထည်ဖော်မှု ၏ ရလဒ်။
object(__PHP_Incomplete_Class)#1 (2) {
["__PHP_Incomplete_Class_Name"]=>
string(4) "Test"
["prop"]=>
int(123)
}
ဤအကြောင်းလည်း ကြည့်ရှုပါ
-
ဖန်ရှင်
serialize,
သည် တန်ဖိုးတစ်ခုကို စီးရီးအဖြစ်ပြောင်းထားသော စာကြောင်းအဖြစ် ပြောင်းလဲပေးသည် -
ဖန်ရှင်
json_encode,
သည် တန်ဖိုးတစ်ခုကို JSON စာကြောင်းအဖြစ် ပြောင်းလဲပေးသည်