La différence entre const et static en PHP : 1. const ne peut modifier que les attributs d'une classe, tandis que static peut modifier les propriétés et les méthodes ; 2. Une fois const défini, il ne peut pas être modifié, tandis que les variables sont modifiées ; by static peut être modifié ; 3. Const ne nécessite pas de symboles variables, contrairement à static.
L'environnement d'exploitation de cet article : système Windows10, php 7.3, ordinateur thinkpad t480.
Les différences et les connexions sont analysées comme suit :
1. const est une constante dans la classe, et définir est utilisé en dehors de la classe pour définir la constante.
2. Const ne peut modifier que les attributs d'une classe, mais pas les méthodes de la classe. Static peut modifier les propriétés et les méthodes.
3. Const et static appartiennent à la classe elle-même, pas à l'instance de classe après new. Utilisez self:: pour accéder à l'intérieur de la classe et utilisez classname:: pour accéder à l'extérieur de la classe. $this dans la classe fait référence à l'instance de classe elle-même, Const et static appartiennent à la classe elle-même, ils ne sont donc pas accessibles avec $this.
4. self::NAME fait référence à const, self::$name fait référence à static. const est une constante et ne nécessite pas de symbole de variable. Les variables modifiées par des variables statiques nécessitent.
5. Une fois const défini, il ne peut pas être modifié, tandis que les variables modifiées par static peuvent être modifiées.
6. Dans les méthodes statiques, les membres et méthodes ordinaires de la classe ne peuvent pas être utilisés. C'est facile à comprendre. Lorsque vous appelez une méthode statique, vous ne pouvez pas être sûr que la classe a été instanciée. Les attributs statiques et les méthodes statiques peuvent être utilisés dans les méthodes ordinaires d'une classe.
Recommandations associées : Tutoriel vidéo php
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!