Olivier CLEMENCE Posted November 18, 2014 Share Posted November 18, 2014 Bonjour, actuellement, je test et corrige mes modules grâce au validator de prestashop (https://validator.prestashop.com/) Il m'indique dans la rubrique optimisation que certaine variable de ne sont pas utilisées. Mais j'ai certains cas où je ne vois pas comment optimiser le code. Par exemple: foreach($fieldsList as $key=>$field) { $this->fields_value[$key]=$obj->$key; } Là le validator me dit que $field n'est pas utilisé. En effet mais je ne vois pas ce que je peux faire. Eventuellement je peux faire ça: foreach(array_keys($fieldsList) as $key) { $this->fields_value[$key]=$obj->$key; } Mais je ne penses que ce soit plus optimisé de devoir passer par array_keys avant. Qu'en pensez-vous ? Avez-vous une solution ? Link to comment Share on other sites More sharing options...
Prestaspirit Posted November 18, 2014 Share Posted November 18, 2014 (edited) Salut, Oui c'est un warning de PHP CodeSniffer, moi je fais un $fileds = $fields; dans le foreach mais le array_keys est bien mieux. Edited November 18, 2014 by Prestaspirit (see edit history) Link to comment Share on other sites More sharing options...
coeos.pro Posted November 18, 2014 Share Posted November 18, 2014 oui il faut utiliser array_keys, c'est optimisé dans la mesure où tu ne créés pas une variable qui n'est pas utilisé (on n'est bien d'accord que ce n'est pas ça qui ralenti une boutique) Par contre il y a d'autres choses qui donnent des erreurs sur le validator et qui sont sans solution, comme $$data : http://www.prestashop.com/forums/topic/367763-que-pensez-vous-du-validator-prestashop/?do=findComment&comment=1826110 Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted November 18, 2014 Author Share Posted November 18, 2014 Merci pour vos réponses. Prestaspirit j'ai bien pensé à mettre le $field=$field mais franchement je vais avoir les yeux qui saigne en relisant mon code Non franchement je peux pas désolé Coeos.pro Utiliser array_keys comme tu le précise retire une variable inutile en effet mais est-ce que ça ne va pas générer une boucle supplémentaire inutile ? J'avoue que je ne sais pas trop comment marche array_keys :'( Link to comment Share on other sites More sharing options...
coeos.pro Posted November 18, 2014 Share Posted November 18, 2014 (edited) non, pas de boucle supplémentaire (plus d'info ici : http://php.net/manual/fr/function.array-keys.php) en fait dans foreach($array as $cle=>$valeur) à chaque boucle tu as la cle et sa valeur, alors qu'avec array_key : foreach(array_keys($array) as $cle) tu as juste les clés qui sont disponibles. Edited November 18, 2014 by coeos.pro (see edit history) Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted November 18, 2014 Author Share Posted November 18, 2014 Je pensais que array-key faisait une boucle pour parcourir le tableau et relever les urls. Bon ben si c'est pas le cas moi ça me va . Ton lien ne marche pas tu voulais parlez de ça je suppose: http://php.net/manual/fr/function.array-keys.php Link to comment Share on other sites More sharing options...
coeos.pro Posted November 18, 2014 Share Posted November 18, 2014 oui effectivement, la parenthèse fermante était dans l'url Link to comment Share on other sites More sharing options...
Prestaspirit Posted November 18, 2014 Share Posted November 18, 2014 Non franchement je peux pas désolé Entièrement d'accord avec toi, j'y avais même pas pensé au array_keys 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now