Heim >Backend-Entwicklung >PHP-Tutorial >PHP-Funktionsumfang und Zugriffsberechtigungen

PHP-Funktionsumfang und Zugriffsberechtigungen

WBOY
WBOYOriginal
2024-04-10 11:21:011273Durchsuche

PHP-Funktionen verfügen über Umfang und Zugriffsberechtigungen, die die Sichtbarkeit von Variablen und Funktionen bestimmen. Der Geltungsbereich umfasst lokal (nur innerhalb der Funktion), global (innerhalb und außerhalb der Funktion) und superglobal (jeder Geltungsbereich). Zu den Zugriffsrechten gehören öffentlich (Zugriff von überall), geschützt (Zugriff nur auf Klassen und Unterklassen) und privat (Zugriff nur innerhalb der Klasse). Im tatsächlichen Kampf kann auf die privaten Variablen der Warenkorbklasse nur innerhalb der Klasse zugegriffen werden, während die öffentlichen Methoden von außen aufgerufen werden können, was die Anwendung von Umfang und Zugriffsrechten widerspiegelt.

PHP 函数的作用域和访问权限

Umfang und Zugriffsberechtigungen von PHP-Funktionen

Funktionsumfang

Der Umfang einer Funktion bestimmt den Umfang der im Code verfügbaren Variablen. Es gibt drei Arten von Bereichen in PHP:

  • Lokale Variablen: nur innerhalb von Funktionen verfügbar.
  • Globale Variablen: Verfügbar sowohl innerhalb als auch außerhalb von Funktionen.
  • Super globale Variablen: in jedem Bereich verfügbar.

Beispiel für einen variablen Bereich

<?php
function myFunction() {
  $localVariable = "Local"; // 局部变量
  echo $localVariable; // 在函数内部可用
}

$globalVariable = "Global"; // 全局变量
myFunction();
echo $globalVariable; // 在函数外部可用
?>

Zugriffsberechtigungen

Funktionszugriffsberechtigungen steuern den Zugriff auf Funktionen durch externen Code. In PHP gibt es drei Arten von Zugriffsrechten:

  • öffentlich: von überall aus zugänglich.
  • protected: Nur innerhalb der Klasse und ihrer Unterklassen zugänglich.
  • privat: nur innerhalb der Klasse zugänglich.

Beispiel für Zugriffsberechtigungen

<?php
class MyClass {
  public function publicMethod() {
    // 可从任何地方访问
  }

  protected function protectedMethod() {
    // 可从类及其子类中访问
  }

  private function privateMethod() {
    // 仅可从类内部访问
  }
}

$myClass = new MyClass();
$myClass->publicMethod(); // 可访问
$myClass->protectedMethod(); // 可访问(类外部子类中)
$myClass->privateMethod(); // 错误,不可访问
?>

Praktischer Fall

Erstellen Sie eine einfache Warenkorbklasse, um den Umfang und die Zugriffsberechtigungen anzuzeigen.

<?php
class Cart {
  private $items = [];

  public function addItem($item) {
    $this->items[] = $item; // 局部变量 $item 可在此处访问
  }

  public function getItems() {
    return $this->items; // 局部变量 $items 可在此处访问
  }
}

$cart = new Cart();
$cart->addItem("苹果");
$cart->addItem("香蕉");
print_r($cart->getItems()); // 输出购物车中的物品
?>

In diesem Beispiel:

  • Die Variable $items ist privat in der Klasse Cart und kann nur innerhalb der Klasse aufgerufen werden. $items 变量在 Cart 类中是私有的,只可在类内部访问。
  • addItemgetItems
  • Die Methoden addItem und getItems sind öffentlich und über externen Code zugänglich.
🎜

Das obige ist der detaillierte Inhalt vonPHP-Funktionsumfang und Zugriffsberechtigungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn