Maison > développement back-end > tutoriel php > Que signifie :: en php

Que signifie :: en php

下次还敢
Libérer: 2024-04-27 17:36:53
original
1221 Les gens l'ont consulté

Le double deux-points (::) est utilisé en PHP pour : 1. Délimiteur d'espace de noms ; 2. Appel de méthode statique ; 3. Accès à la classe parent ; 4. Accès constant ; Par exemple, MyNamespace::MyClass représente le délimiteur d'espace de noms, tandis que MyClass::myStaticMethod() représente un appel de méthode statique.

Que signifie :: en php

Double deux-points (::) en PHP

Le double deux-points (::) a les utilisations suivantes en PHP :

1 Séparateur d'espace de noms

  • en PHP 5.3 et supérieur Dans les versions ultérieures. , les doubles deux-points sont utilisés pour séparer les classes, les fonctions et les constantes dans l'espace de noms.
  • Par exemple : MyNamespace::MyClassMyNamespace::MyClass

2. 静态方法调用

  • 双冒号可用于调用类的静态方法,而不必实例化该类。
  • 例如:MyClass::myStaticMethod()

3. 父类访问

  • 双冒号可用于访问父类的属性和方法。
  • 例如:parent::myProperty

4. 常量访问

  • 双冒号可用于访问类的常量,而不必通过类名。
  • 例如:MyClass::MY_CONSTANT

5. 延迟静态绑定 (LSB)

  • 双冒号可用于实现延迟静态绑定,允许在运行时确定要调用的方法。
  • 例如:static::myMethod()

2. Appel de méthode statique

🎜Les doubles deux-points peuvent être utilisés pour appeler les méthodes statiques d'une classe sans avoir à instancier la classe. 🎜🎜Par exemple : MyClass::myStaticMethod()🎜🎜🎜🎜3. Accès à la classe parent🎜🎜🎜🎜Les doubles deux-points peuvent être utilisés pour accéder aux propriétés et aux méthodes de la classe parent. 🎜🎜Par exemple : parent::myProperty🎜🎜🎜🎜4. Accès constant🎜🎜🎜🎜Les doubles deux-points peuvent être utilisés pour accéder aux constantes d'une classe sans avoir à transmettre le nom de la classe. 🎜🎜Par exemple : MyClass::MY_CONSTANT🎜🎜🎜🎜5. Liaison statique retardée (LSB)🎜🎜🎜🎜Des deux-points peuvent être utilisés pour implémenter une liaison statique retardée, permettant de déterminer l'appel à méthode d'exécution. 🎜🎜Par exemple : static::myMethod()🎜🎜🎜🎜Exemple : 🎜🎜
// 命名空间分隔符
namespace MyNamespace;
class MyClass {}

// 静态方法调用
class Foo {
    public static function myStaticMethod() {
        echo "This is a static method.\n";
    }
}
Foo::myStaticMethod();

// 父类访问
class Bar extends Foo {
    public function myChildMethod() {
        echo "This is a child method.\n";
        parent::myStaticMethod();
    }
}
$bar = new Bar();
$bar->myChildMethod();

// 常量访问
class Baz {
    const MY_CONSTANT = 'Hello, world!';
}
echo Baz::MY_CONSTANT;
Copier après la connexion

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal