Maison  >  Article  >  développement back-end  >  Introduction à la surcharge en PHP

Introduction à la surcharge en PHP

小云云
小云云original
2018-03-20 13:46:101762parcourir

La "surcharge" fournie par PHP fait référence à la "création" dynamique d'attributs et de méthodes de classe. Nous faisons cela grâce à des méthodes magiques. Les méthodes surchargées sont appelées lorsqu'une propriété de classe ou une méthode est appelée et qui est indéfinie ou inaccessible dans l'environnement actuel. Toutes les méthodes surchargées doivent être déclarées publiques.

**note :** La "surcharge" en PHP est différente de la plupart des autres langages orientés objet. La « surcharge » traditionnelle est utilisée pour fournir plusieurs méthodes de classe portant le même nom, mais chaque méthode a des types et des numéros de paramètres différents.

1. Surcharge d'attribut

public void __set ( string $name , mixed $value )
public mixed __get ( string $name )
public bool __isset ( string $name )
public void __unset ( string $name )

Lors de l'attribution d'une valeur à un attribut inaccessible, __set() sera appelé.
Lors de la lecture de la valeur d'une propriété inaccessible, __get() sera appelé.
__isset() est appelé lorsque isset() ou empty() est appelé sur une propriété inaccessible.
Lorsque unset() est appelé sur une propriété inaccessible, __unset() est appelé.
Le paramètre $name fait référence au nom de la variable à opérer. La valeur de la variable

name de la méthode __set().
La surcharge de propriétés ne peut être effectuée que dans les objets. Dans les méthodes statiques, ces méthodes magiques ne seront pas appelées. Aucune de ces méthodes ne peut donc être déclarée statique. Depuis PHP 5.3.0, définir ces méthodes magiques comme statiques produit un avertissement.

2. Surcharge de méthode

public mixed __call ( string $name , array $arguments )
public static mixed __callStatic ( string $name , array $arguments )

Lorsqu'une méthode inaccessible est appelée dans un objet, __call() sera appelée.
Lors de l'appel d'une méthode inaccessible dans un contexte statique, __callStatic() sera appelé. Le paramètre

arguments est un tableau d'énumération contenant les paramètres à passer à la méthode $name.

La "surcharge" fournie par PHP fait référence à la "création" dynamique d'attributs et de méthodes de classe. Nous faisons cela grâce à des méthodes magiques.
Les méthodes surchargées seront appelées lors de l'appel d'attributs de classe ou de méthodes non définies ou inaccessibles dans l'environnement actuel.
Toutes les méthodes surchargées doivent être déclarées publiques.
**note :** La "surcharge" en PHP est différente de la plupart des autres langages orientés objet. La « surcharge » traditionnelle est utilisée pour fournir plusieurs méthodes de classe portant le même nom, mais chaque méthode a des types et des numéros de paramètres différents.

Recommandations associées :

opérateur de tableau surchargé php_Tutoriel PHP

opérateur de tableau surchargé php

Occasions d'application de surcharge de méthode (écrasement) dans l'héritage php, surcharge 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!

Déclaration:
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