ফাংশন get_called_class
ফাংশন get_called_class স্ট্যাটিক মেথডটি যে ক্লাসের প্রসঙ্গে কল করা হয়েছে তার নাম রিটার্ন করে। ইনহেরিটেন্স নিয়ে কাজ করার সময় এটি উপযোগী যখন নির্ধারণ করতে হয় যে ঠিক কোন ক্লাস থেকে মেথডটি কল করা হয়েছিল।
সিনট্যাক্স
get_called_class();
উদাহরণ
দুটি ক্লাস তৈরি করি এবং চাইল্ড ক্লাস থেকে একটি মেথড কল করি:
<?php
class ParentClass {
public static function test() {
return get_called_class();
}
}
class ChildClass extends ParentClass {}
echo ChildClass::test();
?>
কোড 실행ের ফলাফল:
'ChildClass'
উদাহরণ
প্যারেন্ট ক্লাস থেকে কল করার সময় ফাংশনের কাজ পরীক্ষা করি:
<?php
class A {
public static function who() {
return get_called_class();
}
}
class B extends A {}
echo A::who();
echo "\n";
echo B::who();
?>
কোড 실행ের ফলাফল:
'A'
'B'
উদাহরণ
প্রয়োজনীয় ক্লাসের অবজেক্ট তৈরি করতে ফাংশনের ব্যবহার:
<?php
class Factory {
public static function create() {
$class = get_called_class();
return new $class;
}
}
class Product extends Factory {}
$obj = Product::create();
echo get_class($obj);
?>
কোড 실행ের ফলাফল:
'Product'
আরও দেখুন
-
ফাংশন get_class,
যা একটি অবজেক্টের ক্লাস রিটার্ন করে -
ফাংশন get_parent_class,
যা প্যারেন্ট ক্লাস রিটার্ন করে