


Quelles sont les différences entre static, self et $this en PHP ?
Les différences entre static, self et $this en PHP sont : 1. [$this] représente une référence à l'objet, écrite dans une méthode non statique dans la classe 2. Self est différent de ; ceci, il pointe vers la classe elle-même, ne pointe vers aucun objet instancié ; 3. static est généralement utilisé pour accéder aux variables statiques et aux méthodes statiques dans une classe.
Les différences entre static, self et $this en php sont :
1. la référence de l'objet $this est écrite dans une méthode non statique de la classe. Lorsque la classe est instanciée, celui qui appelle la méthode (généralement un appel d'objet) $this représente une référence à l'objet. $this
<?php class Person { public $name; public function getName() { echo $this->name; } } $p = new Person(); $p2 = new Person(); $p->name = "小红"; $p2->name = "小明"; $p->getName(); // 小红 $p2->getName(); // 小明
est différent de cela. Il pointe vers la classe elle-même et ne pointe vers aucun objet instancié. Il est généralement utilisé pour accéder aux variables statiques et les méthodes statiques d'une classe sont également des méthodes écrites dans la classe. La classe dans laquelle self est écrit indique la référence de la classe self
<?php class Person { public static $name = "小红"; public static function getName() { echo self::$name; } } $p = new Person(); $p2 = new Person(); $p::getName(); // 小红 $p2::getName(); // 小红 $p::$name = "小明"; $p::getName(); // 小明 $p2::getName(); // 小明
Généralement utilisé Pour accéder aux variables statiques et aux méthodes statiques dans une classe, ce sont aussi des méthodes écrites dans la classe. C'est aussi la classe qui appelle la méthode static signifie que la classe (quelle classe est liée) static
<?php class A { public function say() { echo "Hello"; } public function saySelf() { //static 和 self 可以调用非静态方法 不能调用非静态属性 静态方法中不能有$this // static 和 self 可以写在非静态的方法中 ,可以使用对象调用 self::say(); } public function sayStatic() { static::say(); } } class B extends A { public function say() { echo "World"; } } $b = new B(); $b->say(); // World $b->saySelf(); // Hello $b->sayStatic(); // World
. Recommandations d'apprentissage associé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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian

Comment configurer Visual Studio Code (VS Code) pour le développement PHP
