Assolomu aleykum OMUC!!!

Kirish:

Statik metodlarni to'g'ridan-to'g'ri chaqirish avval sinfning namunasini yaratmasdan mumkin.

Statik metodlar statik kalit so'z bilan e'lon qilinadi:

Sintaksis:

<?php
class ClassName {
  public static function staticMethod() {
 &nbsp;&nbsp; echo "Salom dunyo!";
  }
}
?>
PHP OOP statik metodlar
PHP OOP statik metodlar

Statik metodga kirish uchun sinf nomi, ikki nuqta (::) va usul nomi:

Sintaksis:

ClassName :: staticMethod ();

Keling, bir misolni ko'rib chiqaylik:

Misol

<?php
class greeting {
  public static function welcome() {
 &nbsp;&nbsp; echo "Hello World!";
  }
}

// Metodni chaqiramiz
greeting::welcome();
?>

Misolga izoh:

Bu erda biz statik metodni e'lon qilamiz: Welcome(). Keyin biz statik metodni sinf nomi, ikki nuqta (::) va metod nomidan foydalanib chaqiramiz (avval sinfning nusxasini yaratmasdan bu ishlarni qilamiz).

PHP - Statik usullar haqida ko'proq ma'lumot

Sinf statik va statik bo'lmagan metodlarga ega bo'lishi mumkin. O'z-o'zidan kalit so'z va ikki nuqta (::) yordamida bir xil sinfdagi usuldan statik metodga kirish mumkin:

Misol

<?php
class greeting {
  public static function welcome() {
 &nbsp;&nbsp; echo "Hello World!";
  }

  public function __construct() {
 &nbsp;&nbsp; self::welcome();
  }
}

new greeting();
?>

Statik usullarni boshqa sinflardagi metodlardan ham chaqirish mumkin. Buning uchun statik usul ommaviy bo'lishi kerak:

Misol

<?php
class greeting {
  public static function welcome() {
 &nbsp;&nbsp; echo "Salom PHP!";
  }
}

class SomeOtherClass {
  public function message() {
 &nbsp;  greeting::welcome();
  }
}
?>

"Bolalar" sinfidan statik usulga ma'lumot uchun "ota-ona" kalit so'zidan foydalanib, bolalar sinfidan foydalaniladi. Bu yerda statik metod ommaviy yoki himoyalangan bo'lishi mumkin.

Misol

<?php
class domain {
  protected static function getWebsiteName() {
 &nbsp;&nbsp; return "uzbekcoders.uz";
  }
}

class domainW3 extends domain {
  public $websiteName;
  public function __construct() {
 &nbsp;&nbsp; $this->websiteName = parent::getWebsiteName();
  }
}

$domainW3 = new domainW3;
echo $domainW3 -> websiteName;
?>

Xulosa:

Biz OOP ni boshladik bu bilimlarni o'rganish uchun sizdan boshlang'ich ko'nika zarur. Umid qilamanki bu maqoladan o'zingizga yangi tajriba va bilimlar oldingiz!