হ্যাঁ, ক্লাসের নামের পরিবর্তে ম্যাজিক ফাংশন __construct() ব্যবহার করার বেশ কিছু সুবিধা রয়েছে। সেগুলি নীচে তালিকাভুক্ত -
৷- ম্যাজিক ফাংশন __construct পিএইচপি 5.4 এ চালু করা হয়েছে। কন্সট্রাক্টর হিসেবে ClassName() এর উপর __construct() ব্যবহার করার একটি সুবিধা হল আপনি যদি ক্লাসের নাম পরিবর্তন করেন, তাহলে আপনাকে কনস্ট্রাক্টর আপডেট করতে হবে না যা DRY(নিজেকে পুনরাবৃত্তি করবেন না) ধারণা সমর্থন করে।
- আপনার যদি একটি চাইল্ড ক্লাস থাকে তাহলে আপনি অভিভাবককে কল করতে পারেন::__construct()একটি সহজ উপায়ে অভিভাবক কন্সট্রাক্টরকে কল করতে।
উদাহরণ
<?php class myclass{ public function __construct(){ echo 'The class "', __CLASS__, '" was initiated!'."\n"; } } class childclass extends myclass{ public function __construct() { parent::__construct(); print "In SubClass constructor "; } } $myobj = new childclass(); ?>
আউটপুট
The class "myclass" was initiated! In SubClass constructor
দ্রষ্টব্য
"__CLASS__" যাকে জাদু ধ্রুবক বলা হয়, যা এই ক্ষেত্রে, যে শ্রেণীতে বলা হয় তার নাম ফেরত দেয়।
পুরানো স্টাইল কনস্ট্রাক্টরগুলি PHP 7.0-এ বঞ্চিত করা হয়েছে এবং ভবিষ্যতের সংস্করণে সরানো হবে। আপনার সর্বদা নতুন কোডে __construct() ব্যবহার করা উচিত।