323 of 410 menu

ฟังก์ชัน 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,
    ซึ่งส่งกลับคลาสแม่
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ