Cet article parle principalement des fondements de la programmation orientée objet PHP (1). Il a une certaine valeur d'apprentissage. Les amis intéressés peuvent en apprendre davantage.
La base de l'orientation processus est une phrase de code, tandis que la base de l'orientation objet est constituée d'objets, et les objets sont dérivés d'instances de classes.
Définition de classe : un ensemble de choses avec les mêmes définitions d'attributs et le même comportement.
Une classe est un ensemble de variables (attributs de variable) et de fonctions (méthodes de classe) qui agissent sur ces variables. Les attributs et méthodes sont la base d'une classe.
1. Encapsulation de classes
Une classe est un ensemble de variables et de fonctions qui agissent sur des variables, la création d'une classe est donc indissociable des variables et des fonctions.
Ajouter des attributs à une classe signifie ajouter de nouvelles variables à la classe, qui peuvent être définies à l'aide des mots-clés public, protected et private. Les variables modifiées avec public sont accessibles en dehors de la classe, tandis que les variables modifiées avec protected et private ne sont pas accessibles en dehors de la classe.
Ajouter une méthode à une classe consiste à ajouter une fonction à la classe, et appeler une méthode de classe consiste à exécuter la fonction. Pour ajouter des méthodes à une classe, ajoutez simplement une nouvelle fonction à la classe.
Si vous souhaitez référencer les attributs ou les méthodes de la classe elle-même dans la fonction, vous devez utiliser la pseudo variable $this plus l'attribut ou le nom de la méthode référencé pour réaliser la fonction.
2. Héritage de classe
Habituellement, vous avez besoin de classes qui ont les mêmes variables et fonctions que les autres classes existantes.
Une classe étendue ou dérivée possède toutes les variables et fonctions de la classe de base ou de la classe parent, et inclut toutes les parties définies de la classe dérivée. Dans le même temps, les classes étendues reposent toujours sur une seule classe de base, c'est-à-dire que l'héritage multiple n'est pas pris en charge.
Syntaxe : classe Sous-classe étend Classe parent
Il convient de noter que les propriétés et méthodes modifiées avec public et protected peuvent être héritées par les sous-classes, tandis que les propriétés et méthodes modifiées avec private ne peuvent pas être héritées par les sous-classes.
3. Surcharge des classes
Parfois, les attributs ou les méthodes d'une sous-classe ont le même nom que les attributs ou les méthodes de la classe parent dont elle hérite. Surcharge.
La surcharge de classe est en fait la surcharge des attributs de classe et des méthodes de classe.
Bien sûr, vous pouvez également accéder aux méthodes de la classe parent dans la sous-classe, mais vous devez utiliser les deux mots-clés spéciaux self et parent, qui sont utilisés pour accéder aux membres ou aux méthodes à l'intérieur de la classe.
$this est un pointeur vers une instance d'objet, qui est déterminée lors de l'instanciation ;
self fait référence à une référence à la classe elle-même, et généralement self pointe vers une variable statique de la classe. Forme : self::static variable name
Parent est une référence à la classe parent. Généralement, parent est utilisé pour appeler le constructeur. de la classe mère.
4. Fonctions liées aux classes et objets en PHP
Fonction class_exists() type de retour : valeur booléenne
Fonction : Cette fonction vérifie si la classe a été définie
get_class_methods() type de retour de fonction : tableau (tous les noms de méthodes)
Fonction : Cette fonction renvoie un tableau composé de noms de méthodes de classe
get_class_vars() type de retour de fonction : tableau ( Tous les attributs publics de la classe)
Fonction : Cette fonction retournera un tableau associatif composé des attributs publics par défaut de la classe, sous la forme : varname=>value
Le get_class( ) type de retour de la fonction : caractère String
Fonction : Cette fonction renverra le nom de la classe à laquelle appartient l'instance d'objet
get_declared_classes() type de retour de la fonction : Tableau
Fonction : Cette fonction renverra le nom de la classe à laquelle appartient l'instance d'objet. Un tableau de noms de classes définis dans .
Fonction get_object_vars() Type de retour : Tableau
Fonction : Cette fonction renvoie un tableau associatif composé d'attributs d'objet.
Fonction get_parent_class() Type de retour : Chaîne
Fonction : Cette fonction renvoie le nom de la classe parent de l'objet ou de la classe.
Type de retour de la fonction is_subclass_of() : valeur booléenne
Fonction : déterminer la relation entre l'objet et la classe
Type de retour de la fonction method_exists() : valeur booléenne
Fonction : Cette fonction vérifie si la méthode de la classe existe.
Tutoriels associés : 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!