Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP ऑब्जेक्ट सीरियलाइज़ेशन (Object Serialization) - serialize() और unserialize()


परिचय

किसी भी ऑब्जेक्ट का बाइट-स्ट्रीम के रूप में स्ट्रिंग निरूपण 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
  1. - PHP में is_a() फंक्शन

    PHP में is_a() फंक्शन जांचता है कि ऑब्जेक्ट इस क्लास का है या इसके माता-पिता में से एक है। यदि ऑब्जेक्ट इस क्लास का है या इसके माता-पिता में से एक है तो TRUE, अन्यथा FALSE लौटाता है। सिंटैक्स is_a(object, class) पैरामीटर्स object - परीक्षण किया जाने वाला ऑब्जेक्ट। class - क्लास का नाम। रिटर्न व

  1. - PHP में get_class() फंक्शन

    PHP में get_class() फंक्शन ऑब्जेक्ट की क्लास का नाम प्राप्त करता है। यदि ऑब्जेक्ट ऑब्जेक्ट नहीं है तो FALSE लौटाता है। यदि क्लास के अंदर ऑब्जेक्ट को बाहर रखा गया है, तो उस क्लास का नाम लौटाया जाता है। सिंटैक्स get_class(object) पैरामीटर्स object - परीक्षण किया जाने वाला ऑब्जेक्ट। आप क्लास के अंदर

  1. - PHP में get_object_vars() फंक्शन

    PHP में get_object_vars() फंक्शन दिए गए ऑब्जेक्ट की प्रॉपर्टीज़ प्राप्त करता है। यह निर्दिष्ट ऑब्जेक्ट के लिए परिभाषित ऑब्जेक्ट प्रॉपर्टीज़ की एक सहयोगी सरणी लौटाता है। सिंटैक्स get_object_vars(object) पैरामीटर्स object - एक ऑब्जेक्ट इंस्टेंस। रिटर्न वैल्यू निर्दिष्ट ऑब्जेक्ट के लिए परिभाषित ऑब