परिचय
किसी भी ऑब्जेक्ट का बाइट-स्ट्रीम के रूप में स्ट्रिंग निरूपण PHP में serialize() फ़ंक्शन द्वारा प्राप्त किया जाता है। ऑब्जेक्ट के सभी प्रॉपर्टी वेरिएबल्स स्ट्रिंग में समाहित होते हैं और मेथड्स सेव नहीं होते। इस स्ट्रिंग को किसी भी फ़ाइल में संग्रहीत किया जा सकता है।
बाइट स्ट्रीम से ऑब्जेक्ट को पुनः प्राप्त करने के लिए, unserialize() फ़ंक्शन है। unserialize() फ़ंक्शन कॉल करने से पहले संबंधित क्लास की परिभाषा उपलब्ध होनी चाहिए।
उदाहरण
उदाहरण 1: ऑब्जेक्ट सीरियलाइज़ करना और फ़ाइल में संग्रहीत करना
पहले निम्न क्लास के ऑब्जेक्ट को सीरियलाइज़ करें और स्ट्रिंग को फ़ाइल में संग्रहीत करें।
<?php
class test1 {
private $name;
function __construct($arg) {
$this->name = $arg;
}
}
$obj1 = new test1("Kiran");
$str = serialize($obj1);
$fd = fopen("obj.txt", "w");
fwrite($fd, $str);
fclose($fd);
?>
वर्तमान फ़ोल्डर में obj.txt बनाया जाता है। अनसीरियलाइज़ करने के लिए, निम्न कोड दिए गए फ़ाइल से पढ़ी गई बाइट स्ट्रीम से ऑब्जेक्ट का पुनर्निर्माण करता है:
उदाहरण 2: ऑब्जेक्ट अनसीरियलाइज़ करना
<?php
class test1 {
private $name;
function __construct($arg) {
$this->name = $arg;
}
function getname() {
return $this->name;
}
}
$filename = "obj.txt";
$fd = fopen("obj.txt", "r");
$str = fread($fd, filesize($filename));
$obj = unserialize($str);
echo "name: " . $obj->getname();
?>
आउटपुट
name: Kiran