PHP kirish modifikatorlari


ULASHISH

PHP - Kirish modifikatorlari

Xususiyatlar va usullarda kirish o‘zgartirish moslamalari (yoki ko‘rinish kalit so‘zlari) bo‘lishi mumkin, ular qayerda bo‘lishi mumkinligini nazorat qiladi kirish mumkin.

PHP da uchta kirish modifikatori mavjud:

  • public - xususiyat yoki usulga hamma joydan kirish mumkin. Bu standart
  • protected - xususiyat yoki metod mumkin doirasida kirish mumkin class va shu classdan olingan classlar bo‘yicha
  • private - xususiyat yoki metod mumkin FAQAT ular belgilangan classda kirish mumkin

Eslatma: Agar hech qanday ruxsat o‘zgartirgich belgilanmagan bo‘lsa, u o‘rnatiladi public .


Ommaviy kirish modifikatori

public kirish modifikatori class xususiyatlari yoki usullariga kirish imkonini beradi hamma joydan.

Quyidagi misolda $name xususiyati va get_details() metodiga classdan tashqaridan kirish mumkin.

Misol

<?php class Fruit {   public $name;   public function get_details() {     echo "Name: " . $this->name . ".";   } } $apple = new Fruit(); $apple->name = "Apple"; // Can be accessed directly $apple->get_details(); ?>
O‘zingiz sinab ko‘ring »


Shaxsiy kirish modifikatori

private kirish modifikatori class xususiyatlari yoki usullariga ruxsat beradi FAQAT ular belgilangan classda kirish uchun.

Quyidagi misolda $name xususiyati shaxsiydir va unga bevosita kirish mumkin emas.

Misol

<?php class Fruit {   private $name;   public function get_details() {     echo "Name: " . $this->name . ".";   } } $apple = new Fruit(); $apple->name = "Apple"; // Error: Cannot access private property $apple->get_details(); ?>
O‘zingiz sinab ko‘ring »

Himoyalangan kirish modifikatori

protected kirish modifikatori class xususiyatlari yoki usullariga ruxsat beradi class ichida va shu classdan olingan classlar (child classlar).

Quyidagi misolda $name xususiyati himoyalangan va unga bevosita kirish mumkin emas.

Misol

<?php class Fruit {   protected $name;   public function get_details() {     echo "Name: " . $this->name . ".";   } } $apple = new Fruit(); $apple->name = "Apple"; // Error: Cannot access protected property $apple->get_details(); ?>
O‘zingiz sinab ko‘ring »

Quyidagi misolda $name xossasi himoyalangan va unga classdan tashqarida to‘g‘ridan-to‘g‘ri kirish mumkin emas, lekin unga Apple subklassida (bola class) kirish mumkin bo‘ladi.

Misol

<?php class Fruit {   protected $name;   public function setType($name) {     $this->name = $name;   } } class Apple extends Fruit {   public function getType() {     echo "Name: " . $this->name . ".";   } } $apple = new Apple(); $apple->setType("Apple"); //echo $apple->name; // Error: Cannot access protected property echo $apple->getType(); // Output: Name: Apple. ?>
O‘zingiz sinab ko‘ring »

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!