কম্পিউটার টিউটোরিয়াল

PHP Serializable ইন্টারফেস


ভূমিকা

Serializable ইন্টারফেস PHP লাইব্রেরিতে রয়েছে একটি ক্লাস বানাতে যা কাস্টোমাইজড সিরিয়ালাইজেশন প্রদান করে। PHP-এর serialize() ফাংশন অধিকাংশ মানকে স্টorable রিপ্রেজেন্টেশনে সিরিয়ালাইজ করতে পারে। তবে, ইউজার-ডিফাইনড ক্লাসের অবজেক্ট সিরিয়ালাইজ করা যায় না। এই ইন্টারফেস সেটি সম্ভব করে।

সিনট্যাক্স

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

মেথড

Serializable::serialize — অবজেক্টের স্ট্রিং রিপ্রেজেন্টেশন

Serializable::unserialize — সিরিয়ালাইজড স্ট্রিং রিপ্রেজেন্টেশন থেকে অবজেক্ট কনস্ট্রাক্ট করা

বিল্ট-ইন serialize() ফাংশন একটি ভ্যালুর স্টorable রিপ্রেজেন্টেশন জেনারেট করে—

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"

  1. PHP-এ strstr() ফাংশন

  2. PHP-এ strspn() ফাংশন

  3. PHP-এ strrev() ফাংশন

  4. PHP-এ strrchr() ফাংশন