फ़ंक्शन 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,
जो पैरेंट क्लास वापस करती है