Maison développement back-end tutoriel php Que sont les cours php ? Explication détaillée des attributs de la classe php

Que sont les cours php ? Explication détaillée des attributs de la classe php

May 26, 2018 am 10:51 AM
php Quoi 属性 详解

Concept de classe : Une classe est une collection d'objets ayant les mêmes attributs et opérations. Il fournit une description abstraite unifiée pour tous les objets appartenant à cette classe, qui comprend deux parties principales : les attributs et les opérations. Dans le langage de programmation orienté objet, une classe est une unité de programme indépendante. Elle doit avoir un nom de classe et comprendre deux parties principales : la description de l'attribut et la description de l'opération.

1. Définition de classe :

i. La définition du mot-clé de classe utilise la classe

Définir une classe vide

Personne de classe{} ;

2. Définir une classe avec des attributs de membre et des opérations

Class Person{

Attributs de membre.....

Opérations ........

}

3. Définissez une classe qui ne peut pas être héritée, utilisez le mot-clé final

Classe finale Personne{

Attributs des membres...

Opération...

}

4. Remarque : le mot-clé final ne peut pas être utilisé. La modification des attributs des membres ne peut modifier que les classes et les méthodes (les méthodes finales seront introduites plus tard)

5. Voici une classe avec final

Définir une classe finale FinalClass, incluant une fonction publique

Définir une classe ChildFinalClass et hériter de la classe FinalClass
final class FinalClass {
public function ffun() {
echo “本类为final类”;
}
}
Copier après la connexion

De cette façon, lorsque la commande ci-dessus est exécutée, le système affichera
class ChildFinalClass extends FinalClass {
public function fchildfun() {
echo ‘本类继承final类FinalClass ’;
}
}
Copier après la connexion

Erreur fatale : la classe ChildFinalClass ne peut pas hériter de la classe finale (FinalClass)

Prouve que la classe défini par le mot-clé final ne peut pas être hérité par les sous-classes

2 Définition des attributs membres dans la classe

i. En tant que classe, les gens ont une paire d'yeux (normaux, sauf Erlangshen), une bouche, deux oreilles, etc. Les noms propres utilisés pour décrire ou exprimer quelque chose sont appelés attributs de membre

ii. Les attributs membres d'une classe utilisent le mot-clé

iii. Les déclarations d'attributs membres communs sont effectuées par Les mots-clés suivants commencent par

public, var, protected, private et sont suivis d'une variable. Il existe également certains attributs de membre, notamment un const statique et constant.


Public : indique global et est accessible par les sous-classes à l'intérieur et à l'extérieur de la classe

Var : cet attribut de membre sera pris en compte dans le Version PHP 5 Attributs de type public

protected signifie protégé et n'est accessible que par cette classe ou sous-classe ou classe parent

private

signifie privé et ne peut être utilisé que dans cette classe


Statique : 1) Attributs statiques,

2) Les attributs membres modifiés avec static peuvent être partagés par tous les objets de la même classe

3) Statique les données existent dans le segment de données en mémoire lorsque la classe est chargée pour la première fois (initialisation du segment statique)

4) Utiliser self:: nom de l'attribut membre dans la classe

5) À l'extérieur la classe Nom de la classe :: nom de l'attribut membre

Const : 1) Attribut constant dans la classe, vous devez utiliser const

pour déclarer une constante dans la classe 2) Utiliser self :: attribut membre dans la classe Nom

3) Utilisation en dehors de la classe Nom de la classe ::Nom de l'attribut membre

Remarque : Les variables de l'attribut peuvent être initialisées, mais la valeur initialisée doit être une constante. constante fait ici référence au script PHP dans C'est une constante pendant la phase de compilation, plutôt qu'une constante calculée pendant la phase d'exécution après la phase de compilation. Par exemple, il ne peut contenir aucun opérateur, ne peut être aucune variable, ne peut pas être une fonction, etc.

iv. Comment appeler les propriétés des membres :

Dans la

méthode membre

de la classe, vous pouvez utiliser $this->property (la propriété est le nom de la propriété) . Pour accéder aux propriétés et aux méthodes d'une classe, mais il ne peut pas être utilisé pour accéder aux propriétés statiques d'une classe ou dans une méthode statique, utilisez plutôt self::$property. La pseudo variable $this peut être utilisée dans les méthodes non statiques d'une classe. Cette pseudo variable est une référence à l'objet instancié qui appelle la méthode. Ensuite, utilisez le code pour expliquer le contenu ci-dessus :

3 Définition des opérations dans une classe
class FinalClass {
//static $a = strTolower();   //这种写法错误
//const  A = 1+2;              //这种写法错误
//public $name = 123+456;     //这种写法错误
static $a = '$a';
const  A = 'A';
public $name = '凤姐';
protected $sex = '男+女';
private $age = 23;
}
class ChildFinalClass extends FinalClass{
public function fchildfun(){
echo &#39;ChildFinalClass类中ChildFinalClass::$a->&#39;.ChildFinalClass::$a."<hr>";
Echo &#39;ChildFinalClass类中ChildFinalClass::A->&#39;.ChildFinalClass::A."<hr>";
echo &#39;大家好,我叫&#39;.$this->name."<hr>";
echo &#39;我是:&#39;.$this->sex.&#39;生<hr>&#39;;
echo &#39;我今年:&#39;.$this->age.&#39;<hr>&#39;;   
//由于age是私有的成员属性,所以在这里将不会被调用,将提示没有定义此属性在ChildFinalClass类中。
 
}
}
$obj = new ChildFinalClass();
$obj->fchildfun();
Copier après la connexion

J'aime généralement appeler les opérations en tant que membres Méthodes. , ci-dessous, j'appellerai les opérations comme des méthodes, mais elles sont toutes identiques

ii Définition des méthodes membres : les méthodes membres sont des méthodes de fonction définies pour la classe. Par exemple, prenez cette classe comme exemple, les gens. peut manger, peut exécuter, peut taper du code, ce sont des méthodes membres. C'est-à-dire que vous pouvez effectuer certaines actions exécutables, que nous comprenons comme méthodes membres

iii. Pour accéder aux méthodes membres et aux attributs des membres, vous pouvez vous référer à l'introduction à l'accès aux attributs des membres ci-dessus.

iv. Les méthodes membres et les attributs de membre incluent également public, protected, private, static, final et la portée est la même. Voici quelques exemples pour votre référence et votre compréhension.

v. Les méthodes membres statiques ne peuvent accéder qu'aux propriétés et méthodes membres statiques, et vous pouvez utiliser self::static method() pour accéder aux méthodes statiques à l'intérieur de la classe et utiliser class name::static method(). pour accéder à la classe externe. )

1. Méthodes personnalisées :

class FinalClass {
static $a = &#39;$a&#39;;
const  A = &#39;A&#39;;
public $name = &#39;凤姐&#39;;
protected $sex = &#39;男+女&#39;;
private $age = 23;
 
    //定义一个公共方法
public function publickfun(){
echo &#39;FinalClass类中self::$a->&#39;.self::$a."<hr>";
echo "FinalClass类中self::A->".self::A."<hr>";
echo &#39;大家好,我叫:&#39;.$this->name."<hr>";
echo &#39;我是:&#39;.$this->sex.&#39;生<hr>&#39;;
echo &#39;我今年:&#39;.$this->age.&#39;<hr>&#39;;
}
 
//定义一个受保护的方法
protected function protectedfun(){
echo &#39;FinalClass类中self::$a->&#39;.self::$a."<hr>";
echo "FinalClass类中self::A->".self::A."<hr>";
echo &#39;大家好,我叫:&#39;.$this->name."<hr>";
echo &#39;我是:&#39;.$this->sex.&#39;生<hr>&#39;;
echo &#39;我今年:&#39;.$this->age.&#39;<hr>&#39;;
}
    //定义一个私用方法
private function privatefun(){
echo &#39;FinalClass类中self::$a->&#39;.self::$a."<hr>";
echo "FinalClass类中self::A->".self::A."<hr>";
echo &#39;大家好,我叫:&#39;.$this->name."<hr>";
echo &#39;我是:&#39;.$this->sex.&#39;生<hr>&#39;;
echo &#39;我今年:&#39;.$this->age.&#39;<hr>&#39;;
}
}
class ChildFinalClass extends FinalClass{
public function fchildfun(){
echo &#39;ChildFinalClass类中ChildFinalClass::$a->&#39;.ChildFinalClass::$a."<hr>";
 
Echo &#39;ChildFinalClass类中ChildFinalClass::A->&#39;.ChildFinalClass::A."<hr>";
 
echo &#39;我是:&#39;.$this->sex.&#39;生<hr>&#39;;
 
echo &#39;我今年:&#39;.$this->age.&#39;<hr>&#39;;   
//由于age是私有的成员属性,可以理解为我不想让别人知道我的年龄,所以在这里将不会被调用,将提示没有定义此属性在ChildFinalClass类中。
 
$this->publickfun();
 
$this->protectedfun();
 
$this->privatefun();            
//由于privatefun是私有的成员方法,所以在这里将不会被调用。
}
}
$obj = new ChildFinalClass();
$obj->fchildfun();
Copier après la connexion
2. Les méthodes magiques


i. toutes les autres méthodes magiques ça doit être comme ça

ii. À partir de PHP 5 et versions ultérieures, les classes en PHP peuvent utiliser des méthodes magiques. Il stipule que les méthodes commençant par deux traits de soulignement () sont réservées comme méthodes magiques, il est donc recommandé que les noms de fonctions de chacun ne commencent pas par eux, à moins que ce ne soit pour surcharger les méthodes magiques existantes. Ensuite, certaines méthodes magiques sont répertoriées si vous le souhaitez. élaborer Pour comprendre, vous pouvez interroger et comprendre un certain élément, je ne le présenterai donc pas en détail ici.

1. construct() Méthode de construction

destruct()

Méthode de destruction

2 , clone()

Si vous souhaitez copier un objet, vous devez utiliser la méthode clone

3. La méthode toString()

est automatiquement appelée lors de la conversion d'un objet. dans une chaîne. Par exemple, lorsque vous utilisez echo pour imprimer un objet,

4. Lors de la sérialisation, utilisez

wakeup. . set_state()

Lorsque var_export() est appelé, cette méthode statique sera appelée (valable depuis PHP 5.1.0)

6.

Lorsque vous essayez de Lorsque vous appelez un objet en appelant une fonction, la méthode d'invocation est automatiquement appelée.


7. callStatic (valable pour PHP 5.3.0 ou supérieur) permet de gérer les appels de méthode statiques

8. get() Cette méthode sera déclenchée lorsqu'une propriété non définie est appelée. transmis est le nom de la propriété à laquelle vous accédez.

set() Cette méthode sera déclenchée lors de l'attribution d'une valeur à un attribut non défini. Les paramètres passés sont le nom de l'attribut et la valeur à définir. La non-déclaration inclut ici les attributs dont le contrôle d'accès est protégé et privé (c'est-à-dire les attributs qui n'ont pas l'autorisation d'accéder) lorsqu'ils sont appelés à l'aide d'un objet.

9. isset() Cette méthode est appelée lorsque la fonction isset() est appelée sur un attribut non défini.

unset() Lorsque la fonction unset() est appelée sur un attribut non défini. Cette méthode est appelé lorsque

10. call( $method, $arg_array )

Lorsqu'une méthode non définie est appelée, cette méthode est appelée


La méthode non définie ici n'inclut aucune autorisation d'accès à la méthode ; si la méthode n'existe pas, accédez à la classe parent pour rechercher la méthode. Si elle n'existe pas dans la classe parent, appelez la méthode call() de cette classe. accédez à la méthode call() de la classe parent.

11. autoload()

Chargement automatique

Méthode magique

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

7 fonctions PHP que je regrette de ne pas connaître auparavant 7 fonctions PHP que je regrette de ne pas connaître auparavant Nov 13, 2024 am 09:42 AM

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Programme PHP pour compter les voyelles dans une chaîne Programme PHP pour compter les voyelles dans une chaîne Feb 07, 2025 pm 12:12 PM

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Expliquez la liaison statique tardive en PHP (statique: :). Expliquez la liaison statique tardive en PHP (statique: :). Apr 03, 2025 am 12:04 AM

Liaison statique (statique: :) ​​implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Apr 03, 2025 am 12:03 AM

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.

See all articles