Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Je m'interroge.
J'explore le Zend Framework pour en comprendre autant que faire se peut les mécanismes et l'architecture et je viens de tomber sur un truc qui me parait un peu hallucinant :
nous avons en natif dans PHP une fonction in_array() qui vérifie la présence d'un élément (fourni en paramètre) dans un tableau (également fourni en paramètre) autorisant en troisième paramètre la validation du type stricte ou non.
Du coup, je m'interroge sur l'utilité réelle de cette classe : Zend_Validate_InArray : est-ce qu'un développeur n'avait rien à faire et s'est senti obligé de ré-inventer la roue ? Il me semblait que la philosophie générale était DRY ... Sinon, j'avoue qu'une subtilité m'a peut-être échappé et qu'un petit bonus est inclus mais que je n'arrive pas à le discerner...
Hors ligne
Bonjour,
Je pense que cela permet en autre de pouvoir l'utiliser dans une chaine de validation.Doc officielle sur les chaines de validation.
Sans cette encapsulation c'est du coup impossible, et du coup moins flexible, et du coup .... .
Hors ligne
Et garder une homogeneité concernant les tests et filtres de validation.
De plus si tu regarde le code de Zend_Validate_InArray, il sagit bien du in_array qui est utilisé si ca peux te rassurer il sagit comme l'a dit Aurelman d'une simple encapsulation.
Hors ligne
Je ne saisis toujours pas l'intérêt de l'encapsulation.
Extrait de la doc du ZF :
34.2.12. InArray
Retourne true si et seulement si $value est contenue dans un tableau. Si l'option stricte est à true, alors le type de $value est aussi vérifié.
C'est (corrigez-moi si je me trompe) très exactement ce que fait la fonction native de PHP in_array(), et donc en une petite ligne de code, je ferai exactement la même chose qu'en trois ou quatre lignes avec Zend_Validate...
Alors parfois, je comprends vite mais il faut m'expliquer longtemps
Hors ligne
Ben je suis d'accord avec Aurelman et Isilgawen : de façon isolé, ça ne sert à rien, mais l'avoir sous cette forme, ça permet de l'insérer dans une chaine de validation (avec des addValidator...)
va voir :
http://framework.zend.com/manual/en/zen … hains.html
A+, Philippe
Hors ligne
Pages: 1