__unserialize विधि
__unserialize विधि unserialize फ़ंक्शन का उपयोग करके ऑब्जेक्ट को अनक्रमित करते समय स्वचालित रूप से कॉल की जाती है।
यह एक पैरामीटर के रूप में उस डेटा के साथ एक सरणी स्वीकार करता है
जो पहले __serialize विधि द्वारा तैयार किए गए थे।
वाक्य - विन्यास
public function __unserialize(array $data): void
उदाहरण
आइए __serialize और __unserialize विधियों के साथ एक क्लास बनाएं:
<?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,
जो ऑब्जेक्ट को क्रमबद्ध करने के लिए तैयार करती है -
फ़ंक्शन
serialize,
जो ऑब्जेक्ट को स्ट्रिंग में बदलता है