Accueil > Refactoring Refactoring> PHP - Lez. 2: la propriété tableau d'une classe

Refactoring PHP - Lez. 2: la propriété tableau d'une classe

Aujourd'hui, nous discuterons les propriétés se composent d'une classe ou une propriété qui contient un tableau.

Nous avons vu dans la leçon précédente ( Refactoring PHP - Lez 1:. propriétés d'une classe ) la façon d'écrire de simples propriétés d'une classe.

En ce qui concerne les propriétés de règles s'appliquent composites convention de nommage introduit dans le didacticiel précédent, à l'exception des méthodes d'accès à la même chose. Ci-dessous la norme à suivre au niveau de la classe.

Méthode addXXX

Pour ajouter un élément à une propriété composée d'utiliser une méthode avec la signature suivante:

addXXX fonction publique ($ valeur, $ key = null)

Où XXX devrait être remplacé par le nom de la propriété.

Ce qui suit est un exemple:

Classe de classe {

$ Élèves privés;

fonction publique addAlunni ($ valeur, $ key = null) {

if (is_array ($ value)) {

foreach ($ valeurs as $ pos => $ item) {

if ($ key! = null) {

$ This-> étudiants [$ position] =

$ Element;

Else {}

$ This-> étudiants [] = $ element;

}

}

} Else if ($ key == null) {

$ This-> étudiants [] = $ valeur;

Else {}

$ This-> étudiants [$ key] = $ valeur;

}

}

}

Comme on le voit les paramètres à passer sont deux: la première liaison, l'option seconde.

Comme nous entrons dans méthode vérifie si la valeur addXXX $ est un tableau. si c'est le cas en boucle sur ce dernier, et si le paramètre $ key est nulle, nous les éléments de file d'attente dans la propriété, mais si $ key n'est pas insérer la valeur null $ pièce en position clé $.

Si $ la valeur est un tableau et $ key est égale à une valeur nulle insérer directement dans la propriété $ élèves.

Enfin, le dernier cas est de savoir si le paramètre $ key est renforcée, dans lequel insérer la valeur au cas $ $ $ principales propriétés des élèves de la classe.

Méthode removeXXX

Pour supprimer un élément d'une propriété fait d'utiliser une méthode avec la signature suivante:

removeXXX fonction publique ($ key = null)

Où XXX devrait être remplacé par le nom de la propriété.

Ce qui suit est un exemple:

Classe de classe {

$ Élèves privés;

fonction publique removeAlunni ($ key = null) {

if (is_array ($ key)) {

foreach ($ position as $ key => $ value) {

unset ($ this-> étudiants [$ value]);

}

} Else if ($ key == null) {

$ This-> étudiants = array ();

Else {}

unset ($ this-> étudiants [$ key]);

}

}

}

Comme nous entrons dans la méthode removeXXX est vérifiée si le paramètre $ key est un tableau. dans l'affirmative boucle sur celui-ci, et éliminer toutes les éléments à des positions correspondant à des valeurs contenues dans le paramètre du procédé.

Si $ key est un tableau et est égal aux élèves dollars resetteremo nulles.

Enfin, le dernier cas est de savoir si le paramètre $ key est renforcée, dans ce cas, la valeur va supprimer la position correspondante dans la propriété $ élèves clés dans la classe.

Méthode getXXXQ

Pour récupérer des éléments d'une propriété fait d'utiliser une méthode avec la signature suivante:

getXXXQ fonction publique ($ key = null)

Où XXX devrait être remplacé par le nom de la propriété.

Ce qui suit est un exemple:

Classe de classe {

$ Élèves privés;

fonction publique getAlunni ($ key = null) {

if (is_array ($ key)) {

$ Éléments = array ();

foreach ($ position as $ key => $ value) {

[$ Value] = $ Éléments $ this-> étudiants [$ value];

}

return $ articles;

} Else if ($ key == null) {

return $ this-> enfants;

}

return $ this-> étudiants [$ key];

}

}

Dès que nous entrons dans la méthode getXXXQ est vérifiée si le paramètre $ key est un tableau. si la boucle de sorte à travers sur ce dernier, et finalement retourner un tableau contenant les valeurs des éléments.

Si $ key est un tableau et est égal à null sera restituer tous les biens $ élèves.

Enfin, le dernier cas correspond à la valeur du paramètre à $ key, dans ce cas, nous allons retourner la valeur correspondant à la position dans la propriété $ élèves clés dans la classe.

Nous fermons la leçon par l'assemblage de tout le code écrit à ce jour et en l'appliquant à un petit exemple, clarifier:

  1. Pas encore de commentaires internautes
  1. Pas encore de trackbacks internautes
Immagine CAPTCHA
CAPTCHA audio
Changer l'image
*