এটি প্রয়োজনীয়তা নির্ভর করে।
JSON, PHP সিরিয়ালাইজেশনের চেয়ে দ্রুত, εκτerton নিচের শর্তগুলো পূরণ না হয়:
- গভীর নেস্টেড অ্যারে সংরক্ষণ করা হয়।
- সংরক্ষিত অবজেক্টগুলোকে সঠিক ক্লাসে আনসিরিয়ালাইজ করতে হয়।
json_decodeসাপোর্ট না করে এমন পুরনো PHP ভার্সনের সাথে ইন্টারঅ্যাকশন হয়।
PHP অ্যারে json_encode দিয়ে সংরক্ষণের জন্য নিচের লাইনটি ব্যবহার করা যায়:
json_encode($array, JSON_UNESCAPED_UNICODE)
JSON অবজেক্টের মূল ক্লাস কোথাও সংরক্ষণ করে না, কিন্তু এটি stdClass এর ক্লাস ইন্সট্যান্স হিসেবে রিস্টোর করা যায়।
কেন serialize-এর পরিবর্তে json_encode ব্যবহার করব?
- JSON, serialize-এর চেয়ে অনেক বেশি পোর্টেবল।
__sleep()এবং__wakeup()ফিচারগুলো JSON-এ লিভারেজ করা যায় না।- ডিফল্টলি পাবলিক প্রপার্টিগুলো JSON-এ সিরিয়ালাইজ হয়। (PHP ভার্সন >= 5.4 হলে
JsonSerializableইমপ্লিমেন্ট করে বিহেভিয়ার চেঞ্জ করা যায়)।
উদাহরণ
<?php // অ্যারে ডিক্লেয়ার করা হয় $value = array( "name"=>"name_me", "email"=>"myemail.com" ); // json_encode() ফাংশন ব্যবহার করা হয় $json = json_encode($value); // আউটপুট ডিসপ্লে echo($json); ?>
আউটপুট
এটি নিচের আউটপুটটি দেবে:
{"name":"name_me","email":"myemail.com"}