عملگر های Scope Resolution در PHP

عملگر های Scope Resolution همچنین به عنوان Paamayim Nekudotayim یا معمولاً به عنوان دابل کولون شناخته می شود ، نشانه ای است که امکان دسترسی به خصوصیات یا یا متود های static ، ثابت ها را فراهم می آورد.
برای اشاره به بلوک ها یا کدهای مربوط به کلاس ها ، اشیاء ، و غیره استفاده می شود. یک شناسه با عملگر Scope Resolution استفاده می شود. متداول ترین نمونه کاربرد این عملگر در PHP دسترسی به خصوصیات و متود ها است.
مثالهای زیر نمونه هایی از عملگر های Scope Resolution را در سناریوهای مختلف نشان می باشد
مثال 1: این نوع تعریف در حین تعریف ثابت ها در یک کلاس استفاده می شود.
<?php
class democlass {
const PI = 3.14;
}
echo democlass::PI;
?>
خروجی:
3.14
مثال 2: سه کلمه کلیدی خاص self ، parent و static برای دسترسی به property یا method از درون تعریف کلاس استفاده می شوند.
<?php
// Declaring parent class
class demo{
public static $bar=10;
public static function func(){
echo static::$bar."\n";
}
}
// Declaring child class
class Child extends demo{
public static $bar=20;
}
// Calling for demo's version of func()
demo::func();
// Calling for child's version of func()
Child::func();
?>
خروجی:
10 20
مثال 3: هنگامی که یک کلاس در حال extends ( ارث بری ) از والدین خود می باشد ، کامپایلر نسخه متد کلاس فرزند را فراخوانی می کند .
<?php
class demo{
public function myfunc() {
echo "myfunc() of parent class\n ";
}
}
class child extends demo {
public function myfunc(){
// Calling parent's version
// of myfunc() method
parent::myfunc();
echo "myfunc() of child class";
}
}
$class = new child;
$class -> myfunc()
?>
خروجی:
myfunc() of parent class myfunc() of child class
ارسال نظر