Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

การเชื่อมโยงแบบคงที่ตอนปลายใน PHP คืออะไร


แนวคิดพื้นฐานที่อยู่เบื้องหลังการเชื่อมโยงแบบคงที่ตอนปลายคือแนวคิดเรื่องการสืบทอดและแนวคิดของคีย์เวิร์ด "ตัวเอง" ไม่เป็นไปตามกฎเดียวกัน ตัวอย่างเช่น เมธอด 'fun' ในคลาสหลักที่เรียกในคลาสย่อยจะไม่ทำให้ 'self' อ้างถึงเด็ก (ตามที่คาดไว้)

แนวคิดของการเชื่อมโยงสแตติกช่วงปลายนำมาซึ่งคีย์เวิร์ดใหม่ 'สแตติก' ซึ่งเมื่อใช้ จะผูกฟังก์ชันกับคลาสรันไทม์ หรือคลาสที่มีการใช้ฟังก์ชันครั้งแรก นอกจากนี้ ฟังก์ชันหรือตัวแปรแบบสแตติกมักจะถูกเรียกใช้งานระหว่างรันไทม์ ไม่ใช่ระหว่างเวลาคอมไพล์ ดังนั้น หากจำเป็นต้องกำหนดค่าแบบไดนามิกให้กับตัวแปรที่เป็นสแตติก ค่านั้นจะเกิดขึ้นระหว่างรันไทม์ และสิ่งนี้เรียกว่าการรวมสแตติกช่วงปลาย

ตัวอย่าง

<?php
class student
{
   public static $my_name = 'Joe';
   public static function getName()
   {
      return "The name of the student is : " . self::$my_name;
   }
   public static function getAge()
   {
      echo static::getName();
   }
}
class Professor extends student
{
   public static function getName()
   {
      return "The name of the student is : " . self::$my_name . " and age is 24.";
   }
}
student::getAge();
echo "\n";
Professor::getAge();
?>

ผลลัพธ์

The name of the student is : Joe
The name of the student is : Joe and age is 24.

คลาสชื่อ 'นักเรียน' มีชื่อและฟังก์ชันที่ดึงชื่อ ฟังก์ชันอื่นดึงอายุของนักเรียน ชั้นเรียนที่ชื่อ 'อาจารย์' ขยายชั้นเรียนของนักเรียนและฟังก์ชันนี้ยังสืบทอดมาอีกด้วย เรียกใช้ฟังก์ชันในการดึงอายุของทั้งนักศึกษาและอาจารย์