__unserialize နည်းလမ်း
__unserialize နည်းလမ်းကို unserialize လုပ်ဆောင်ချက်ကိုအသုံးပြု၍ object ကို ပြန်လည်အချက်အလက်ဖော်သည့်အခါတွင် အလိုအလျောက် ခေါ်ယူသည်။
အချက်အလက်အဖြစ် ၎င်းသည် __serialize နည်းလမ်းမှ ယခင်က ပြင်ဆင်ထားသော အချက်အလက်များပါရှိသည့် array တစ်ခုကို လက်ခံသည်။
ဝါကျဖွဲ့ပုံ
public function __unserialize(array $data): void
ဥပမာ
__serialize နှင့် __unserialize နည်းလမ်းများပါရှိသော class တစ်ခု ဖန်တီးကြပါစို့:
<?php
class User {
private $name;
private $age;
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
public function __serialize(): array {
return ['name' => $this->name, 'age' => $this->age];
}
public function __unserialize(array $data): void {
$this->name = $data['name'];
$this->age = $data['age'];
}
public function getInfo() {
return $this->name . ', ' . $this->age;
}
}
$user = new User('John', 30);
$serialized = serialize($user);
$unserialized = unserialize($serialized);
echo $unserialized->getInfo();
?>
ကုဒ် လုပ်ဆောင်ချက်၏ ရလဒ်:
'John, 30'
ဥပမာ
ကိုယ်ပိုင်ဂုဏ်သတ္တိများနှင့် __unserialize ကို အသုံးပြုခြင်း:
<?php
class Product {
private $id;
private $price;
public function __construct($id, $price) {
$this->id = $id;
$this->price = $price;
}
public function __serialize(): array {
return ['id' => $this->id, 'price' => $this->price];
}
public function __unserialize(array $data): void {
$this->id = $data['id'];
$this->price = $data['price'];
}
public function getPrice() {
return $this->price;
}
}
$product = new Product(123, 99.99);
$serialized = serialize($product);
$unserialized = unserialize($serialized);
echo $unserialized->getPrice();
?>
ကုဒ် လုပ်ဆောင်ချက်၏ ရလဒ်:
99.99
ဤအကြောင်းကိုလည်း ကြည့်ပါ
-
__serializeနည်းလမ်း,
သည် object ကို အချက်အလက်ဖော်ရန် ပြင်ဆင်ပေးသည် -
serializeလုပ်ဆောင်ချက်,
သည် object ကို စာကြောင်းတစ်ကြောင်းအဖြစ်သို့ ပြောင်းလဲပေးသည်