PHP-এ OOP-এ একাধিক ট্রেইট
একটি ক্লাসে একটি নয়, একাধিক
ট্রেইট ব্যবহার করা যেতে পারে। এখানেই তাদের সুবিধা প্রকাশ পায়
ইনহেরিটেন্সের তুলনায়। ব্যবহারের জন্য প্রয়োজনীয়
ক্লাসে ট্রেইটগুলি কমা দিয়ে নির্দিষ্ট করা যেতে পারে
use কীওয়ার্ডের পরে।
আসুন একটি উদাহরণ দিয়ে দেখি। ধরা যাক আমাদের কাছে দুটি ট্রেইট আছে। প্রথমটি:
<?php
trait Helper1
{
private $name;
public function getName()
{
return $this->name;
}
}
?>
দ্বিতীয়টি:
<?php
trait Helper2
{
private $age;
public function getAge()
{
return $this->age;
}
}
?>
আমাদের ক্লাসে ট্রেইটগুলি ব্যবহার করি:
<?php
class User
{
use Helper1, Helper2; // ট্রেইটগুলি সংযোগ করছি
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
Trait1,
Trait2 এবং Trait3 নাম সহ 3টি ট্রেইট তৈরি করুন।
প্রথম
ট্রেইটে method1 মেথড থাকুক, যা
1 রিটার্ন করে,
দ্বিতীয় ট্রেইটে - method2 মেথড,
যা 2 রিটার্ন করে, এবং তৃতীয় ট্রেইটে
- method3 মেথড, যা 3 রিটার্ন করে।
এই সমস্ত মেথড প্রাইভেট হোক।
Test ক্লাস তৈরি করুন, যা
আমাদের তৈরি করা তিনটি ট্রেইটই ব্যবহার করে। এই
ক্লাসে একটি পাবলিক মেথড getSum তৈরি করুন,
যা সংযুক্ত ট্রেইটগুলির মেথডগুলির ফলাফলের যোগফল রিটার্ন করে।