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

ตัวดำเนินการขอบเขตความเป็นตัวแปร (Scope Resolution Operator ::) ใน PHP

บทนำ

ใน PHP ตัวดำเนินการ double colon :: ถูกกำหนดเป็น Scope Resolution Operator ใช้เมื่อเราต้องการเข้าถึงค่าคงที่ คุณสมบัติ และเมธอดที่กำหนดระดับคลาส เมื่ออ้างอิงรายการเหล่านี้ภายนอกการกำหนดคลาส ใช้ชื่อคลาสพร้อม scope resolution operator ตัวดำเนินการนี้ยังเรียกว่า Paamayim Nekudotayim ซึ่งในภาษาฮีบรูหมายถึง double colon

รูปแบบไวยากรณ์

<?php class A{     const PI=3.142;     static $x=10; } echo A::PI; echo A::$x; $var='A'; echo $var::PI; echo $var::$x; ?>

ภายในคลาส (Inside class)

เพื่อเข้าถึงรายการระดับคลาสภายในเมธอดใดๆ ใช้คีย์เวิร์ด - self

<?php class A{     const PI=3.142;     static $x=10;     static function show(){         echo self::PI . self::$x;     } } A::show(); ?>

ในคลาสลูก (In child class)

หากเมธอดของ parent class ถูก override โดย child class และคุณต้องการเรียกเมธอด parent ที่สอดคล้อง มันต้องนำหน้าด้วยคีย์เวิร์ด parent และ scope resolution operator

ตัวอย่าง

<?php class testclass{     public function sayhello(){         echo "Hello World\n";     } } class myclass extends testclass{     public function sayhello(){         parent::sayhello();         echo "Hello PHP";     } } $obj=new myclass(); $obj->sayhello(); ?>

ผลลัพธ์

Hello World Hello PHP