Comment spécifier le niveau d'accès aux fonctions PHP ?

WBOY
Libérer: 2024-04-16 15:51:01
original
381 Les gens l'ont consulté

Le niveau d'accès d'une fonction PHP précise le niveau d'accès du code : Public : Accessible par n'importe quel code. Protégé : accessible par la même classe ou sous-classes. Privé : Accessible uniquement par la classe dans laquelle la fonction est définie.

PHP 函数的访问权限级别如何指定?

Spécification du niveau d'accès pour les fonctions PHP

En PHP, le niveau d'accès à une fonction spécifie quel code peut accéder à la fonction. Vous pouvez contrôler la visibilité d'une fonction à l'aide de modificateurs d'accès. Voici les niveaux d'accès spécifiés en PHP :

1. Public

  • Le niveau d'accès public permet à n'importe quel code d'accéder à la fonction, qu'il soit dans le même script ou dans un script différent.

Exemple :

public function publicFunction() {
  // 函数代码
}
Copier après la connexion

2. Protégé

  • Le niveau d'accès protégé permet d'accéder à la fonction dans la même classe ou ses sous-classes.

Exemple :

protected function protectedFunction() {
  // 函数代码
}
Copier après la connexion

3. Privé

  • Le niveau d'accès privé permet d'accéder à une fonction uniquement au sein de la classe dans laquelle elle est définie.

Exemple :

private function privateFunction() {
  // 函数代码
}
Copier après la connexion

Cas pratique

Considérons l'exemple suivant où nous avons défini des fonctions dans différentes classes avec différents niveaux d'accès :

class ParentClass {
  public function publicFunction() {
    echo "Public function in parent class";
  }

  protected function protectedFunction() {
    echo "Protected function in parent class";
  }

  private function privateFunction() {
    echo "Private function in parent class";
  }
}

class ChildClass extends ParentClass {
  public function accessFunctions() {
    $this->publicFunction();
    $this->protectedFunction();
    // 错误:对私有函数无访问权限
    $this->privateFunction();
  }
}

// 实例化子类
$child = new ChildClass();

// 调用公共和受保护的函数
$child->publicFunction();
$child->protectedFunction();
Copier après la connexion

Dans cet exemple, la méthode ParentClass 定义了具有不同访问权限级别的函数,而 ChildClass 继承了 ParentClassChildClass 中的 accessFunctions() a accès aux fonctions publiques et protégées , mais pas d'accès aux fonctions privées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal