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

PHP Serializable इंटरफेस

परिचय

Serializable इंटरफेस PHP लाइब्रेरी में एक क्लास बनाने के लिए मौजूद है जो कस्टमाइज़्ड सीरियलाइज़ेशन प्रदान करता है। PHP का serialize() फ़ंक्शन अधिकांश मानों को स्टोरेबल प्रतिनिधित्व में सीरियलाइज़ करने में सक्षम है। हालांकि, यूजर-डिफाइंड क्लास के ऑब्जेक्ट सीरियलाइज़ नहीं किए जा सकते। यह इंटरफेस इसे संभव बनाता है।

सिंटैक्स

Serializable {
    /* Methods */
    abstract public serialize ( void ) : string
    abstract public unserialize ( string $serialized ) : void
}

मेथड्स

  • Serializable::serialize - ऑब्जेक्ट का स्ट्रिंग प्रतिनिधित्व
  • Serializable::unserialize - सीरियलाइज़्ड स्ट्रिंग प्रतिनिधित्व से ऑब्जेक्ट का निर्माण

बिल्ट-इन serialize() फ़ंक्शन एक मान का स्टोरेबल प्रतिनिधित्व उत्पन्न करता है:

serialize ( mixed $value ) : string

unserialize() फ़ंक्शन स्टोर्ड प्रतिनिधित्व से PHP मान बनाता है:

unserialize ( string $str [, array $options ] ) : mixed

Serializable उदाहरण

निम्न उदाहरण में, एक स्ट्रिंग वेरिएबल 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"

नोट: PHP 7.4+ में, __serialize() और __unserialize() मैजिक मेथड पसंदीदा हैं (Serializable इंटरफेस डिप्रिकेटेड नहीं है लेकिन नए मेथड अधिक लचीले हैं)।

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

    विवरण strspn() फंक्शन charlist पैरामीटर से स्ट्रिंग में मिले कैरेक्टर्स की संख्या लौटाता है। सिंटैक्स strspn(str, charlist, begin, len) पैरामीटर्स str − खोजने के लिए स्ट्रिंग charlist − ढूंढने वाले कैरेक्टर्स begin − स्ट्रिंग में कहां से शुरू करना है len − स्ट्रिंग की लंबाई रिटर्न वैल्यू strspn

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

    विवरण strrev() फंक्शन स्ट्रिंग को रिवर्स करने के लिए उपयोग किया जाता है। यह रिवर्स्ड स्ट्रिंग लौटाता है। सिंटैक्स strrev(str) पैरामीटर्स str − रिवर्स की जाने वाली स्ट्रिंग रिटर्न वैल्यू strrev() फंक्शन रिवर्स्ड स्ट्रिंग लौटाता है। उदाहरण निम्न एक उदाहरण है: <?php echo strrev(Jack); ?> आ

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

    strrchr() फ़ंक्शन strrchr() फ़ंक्शन एक स्ट्रिंग में किसी वर्ण की अंतिम घटना को खोजने के लिए उपयोग किया जाता है। सिंटैक्स strrchr($string, $char) पैरामीटर पैरामीटरविवरण stringखोजी जाने वाली स्ट्रिंग charखोजा जाने वाला वर्ण। यदि char में एक से अधिक वर्ण हैं, तो केवल पहले का उपयोग किया जाता है।