Accueil > Refactorisation > 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 de biens contenant 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 se composent de conventions de nommage, les règles introduites dans le tutoriel précédent, sauf pour les méthodes pour y accéder. En dessous de la norme à suivre au niveau de la classe.

Méthode addXXX

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

addXXX fonction publique ($ valeur, $ null clé =)

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

Ce qui suit est un exemple:

classe Class {

$ Élèves privés;

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

if (is_array ($ valeur)) {

foreach ($ valeur $ position => $ item) {

if ($ key! = null) {

$ This-> étudiants [$ position] =

$ Element;

Else {}

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

}

}

} Else if ($ key == null) {

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

Else {}

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

}

}

}

Comme vous pouvez voir les paramètres à passer sont deux: le premier obligatoire, la seconde option.

Dès que nous entrons dans la méthode addXXX vérifie si le paramètre est un tableau $ valeur. si c'est le cas en boucle sur elle, et si le paramètre $ key est NULL ajoute des éléments dans la propriété, mais si $ key n'est pas une valeur nulle insérez $ $ pièce en position clé.

Si $ valeur est un tableau et $ key est égale à nulle mettra élèves $ $ en valeur de la propriété directement.

Enfin le dernier cas est que si le paramètre $ key est renforcée, dans laquelle la valeur d'insérer cas à $ $ $ propriétés clés des étudiants des classes.

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 = nulle)

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

Ce qui suit est un exemple:

classe Class {

$ Élèves privés;

fonction publique removeAlunni ($ key = null) {

if (is_array ($ key)) {

foreach ($ $ position clé comme => $ value) {

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

}

} Else if ($ key == null) {

$ This-> étudiants = array ();

Else {}

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

}

}

}

Dès que nous entrons dans la méthode removeXXX vérifie si le paramètre $ key est un tableau. si c'est le cas en boucle sur elle, et supprimer tous les éléments à des positions correspondant à des valeurs contenues dans le paramètre de méthode.

Si $ key est un tableau et est égal à NULL pour réinitialiser les élèves $.

Enfin le dernier cas est que si le paramètre $ key est renforcée, dans ce cas, supprimez la valeur correspondant à la position dans la propriété $ élèves clé dans la classe.

Méthode getXXX

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

getXXX fonction publique ($ key = nulle)

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

Ce qui suit est un exemple:

classe Class {

$ Élèves privés;

fonction publique getAlunni ($ key = null) {

if (is_array ($ key)) {

$ Éléments = array ();

foreach ($ $ position clé comme => $ value) {

[Valeur $] $ Éléments = $ this-> étudiants [$ valeur];

}

retourner les articles $;

} Else if ($ key == null) {

return $ this-> enfants;

}

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

}

}

Dès que nous entrons dans la méthode getXXX est vérifié si le paramètre $ key est un tableau. si c'est le cas en boucle sur elle, et finalement retourner un tableau contenant les valeurs des éléments requis.

Si $ key est un tableau et est égale à nulle sera de retour tous les élèves propriété $.

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é dans la classe.

Nous fermons la leçon par l'assemblage de tout le code écrit jusqu'à présent et de l'appliquer à un petit exemple, en précisant:

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