परिचय
धारावाहिक इंटरफ़ेस PHP लाइब्रेरी में एक क्लास बनाने के लिए मौजूद है जो कस्टमाइज्ड सीरियलजिंग प्रदान करता है। PHP का क्रमानुसार () फ़ंक्शन अधिकांश मानों को एक संग्रहणीय प्रतिनिधित्व के लिए क्रमबद्ध करने में सक्षम है। हालांकि, उपयोगकर्ता परिभाषित वर्गों की वस्तुओं को क्रमबद्ध नहीं किया जा सकता है। यह इंटरफ़ेस इसे संभव बनाता है।
सिंटैक्स
Serializable { /* Methods */ abstract public serialize ( void ) : string abstract public unserialize ( string $serialized ) : void }
तरीके
धारावाहिक::क्रमबद्ध करें — वस्तु का स्ट्रिंग प्रतिनिधित्व
सीरियलाइज़ करने योग्य::अनसेरियलाइज़ करें — क्रमबद्ध स्ट्रिंग प्रतिनिधित्व से वस्तु का निर्माण करता है
बिल्ट-इन serialze() फ़ंक्शन किसी मान का एक यादगार प्रतिनिधित्व उत्पन्न करता है
serialize ( mixed $value ) : string
अनक्रमबद्ध करें () फ़ंक्शन एक संग्रहीत प्रतिनिधित्व से एक PHP मान बनाता है
unserialize ( string $str [, array $options ] ) : mixed
सीरियल करने योग्य उदाहरण
निम्नलिखित उदाहरण में, एक स्ट्रिंग चर का उपयोग myclass की निजी संपत्ति में किया जाता है। जब अंतर्निहित serialize () फ़ंक्शन इस वर्ग के ऑब्जेक्ट को तर्क के रूप में उपयोग करता है, तो serialize () विधि स्वचालित रूप से कॉल की जाती है। इसी तरह, unserialize() फ़ंक्शन स्ट्रिंग प्राइवेट प्रॉपर्टी के साथ ऑब्जेक्ट को फिर से बनाता है।
उदाहरण
<?php class myclass implements Serializable { private $arr; public function __construct() { $this->arr = "TutorialsPoint India (p) Ltd"; } public function serialize() { echo "Serializing object..\n"; return serialize($this->arr); } public function unserialize($data) { echo "Unserializing object..\n"; $this->arr = unserialize($data); } public function getdata() { return $this->arr; } } $obj = new myclass; $serobj = serialize($obj); var_dump ($serobj); $obj1 = unserialize($serobj); var_dump($obj1->getdata()); ?>
आउटपुट
उपरोक्त प्रोग्राम निम्न आउटपुट दिखाता है
Serializing object.. string(55) "C:7:"myclass":36:{s:28:"TutorialsPoint India (p) Ltd";}" Unserializing object.. string(28) "TutorialsPoint India (p) Ltd"