Nouveau sujet Répondre Imprimer Syndication RSS 2.0

Break/Return et PHP6

Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
Message édité 1 fois, dernière édition par Korko, 30 Aout 2008, 20:05     Lien vers ce message 30 Aout 2008, 11:05
Citation (B.Moncef)
Questions si jamais Geno passe par là :
- Après le premier if dans cette méthode (send_email()), $send_email est mis à TRUE. A quoi bon puisqu'il est de toutes façons remis à false plus tard, dans la boucle ?
- La méthode send_email_part() d'après son utilisation par send_email ne renvoie pas de valeur, mais dans dans la méthode elle même y a un return qui sert pas à grand chose. Si c'est juste pour sortir du foreach, un break; aurait mieux sa place (c'est à ça que ça sert)



disons que break sors de la boucle alors que return sors de la fonction quel que soit le niveau de profondeur de boucle ou tu es. ^^


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Equipe de support
Avatar de B.Moncef
  • Age : 17 ans
  • Messages : 1926
  • Inscrit : 10 Septembre 2005
  Lien vers ce message 30 Aout 2008, 17:57
Il n'y a pas de boucles imbriquées dans la méthode (enfin si mais c'est pas important ici)... Même si c'était le cas je trouve quand même que c'est "pas très propre" d'utiliser un return uniquement pour sortir d'une boucle.
 
Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
  Lien vers ce message 30 Aout 2008, 18:05
bah en soi c'est pas propre d'utiliser break ou return déjà :p mais return c'est mieux que break pour sortir d'une fonction. break c'est mieux pour sortir d'une boucle et exit pour sortir d'une application.


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Volcan
Avatar de Talus
  • Age : 20 ans
  • Messages : 1548
  • Inscrit : 28 Septembre 2006
Message édité 1 fois, dernière édition par Talus, 30 Aout 2008, 18:27     Lien vers ce message 30 Aout 2008, 18:26
Moncef > Bof, je suis pas tout à fait d'accord avec toi Au lieu d'utiliser un break, pour de toutes manières finir la fonction, autant faire un return... Quoique, si une fonction retourne quelque fois un truc et quelques fois non, c'est pas très logique, mais au niveau des perf, c'est la meme chose...

Korko > Oui, ca dépend des cas. Mais quelque chose à cracher dessus, ce sont les label et les goto qu'il va y avoir dans PHP6 §§. Pour les breaks, ca veut dire que la boucle est mal concue, mais... Ca dépend du contexte.


 
Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
  Lien vers ce message 30 Aout 2008, 18:30
Hein ??!! Label ??!! Goto ??!! PHP6 ??!! Ils veulent pourrir tout leur travail ma parole ! PHP6 qui semblait si glorieux !! NOOOOOOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Volcan
Avatar de Talus
  • Age : 20 ans
  • Messages : 1548
  • Inscrit : 28 Septembre 2006
Message édité 1 fois, dernière édition par Talus, 30 Aout 2008, 18:54     Lien vers ce message 30 Aout 2008, 18:49
Hélas....

Enfin, j'espère que c'est pas une décision définitive :/.

http://www.slideshare.net/dseg...haine-frontire/
http://teethgrinder.co.uk/perm.php?a=php6-gets-GOTO
http://forums.france-hardware....loppement-.html
http://wiki.pooteeweet.org/PhP60

:/.


 
Equipe des MODS
Avatar de Grummfy
  • Age : 23 ans
  • Messages : 5456
  • Inscrit : 16 Septembre 2004
  Lien vers ce message 30 Aout 2008, 19:06
j'adore le ifsetor .... j'avais déjà lu beaucoup sur php6 mais pas encore ce truc là!


"La gravité est le bonheur des imbéciles" Charles de Montesquieu > "T'as raison, L'apesanteur c'est plus rigolo" Hébus de Phalompe (Troll de Troy)
http://www.grummfy.com/download/crea/smileys/fsb2.gif Mods fsb1 - Mods fsb2 - Mon forum - Grummfy's project
 
Volcan
Avatar de Talus
  • Age : 20 ans
  • Messages : 1548
  • Inscrit : 28 Septembre 2006
Message édité 2 fois, dernière édition par Talus, 30 Aout 2008, 19:17     Lien vers ce message 30 Aout 2008, 19:16
Oui, j'aime également beaucoup ce petit opérateur... Mais y'en a qui parle du ifsetor(), et d'autres du "?:". Personnellement, j'ai testé, et il s'est avéré, dans la version dispo sur OVH (et snap de décembre dernier) que c'etait le "?:" qui etait pour le moment vainqueur...

<?php

$a = $_GET['a'] ?: 'defaut';

// Ou

$a = ifsetor($_GET['a'], 'defaut');


Ici, $a prendra soit $_GET['a'] si elle est définie, sinon 'defaut'.

Perso, je préfère le "?:" ^^.


 
Equipe de support
Avatar de B.Moncef
  • Age : 17 ans
  • Messages : 1926
  • Inscrit : 10 Septembre 2005
Message édité 1 fois, dernière édition par B.Moncef, 30 Aout 2008, 19:25     Lien vers ce message 30 Aout 2008, 19:24
Merci pour les liens, je vois pas l'utilité de supporter les GOTO également, à part se mettre énormément de développeurs à dos...

Moncef > Bof, je suis pas tout à fait d'accord avec toi Au lieu d'utiliser un break, pour de toutes manières finir la fonction, autant faire un return... Quoique, si une fonction retourne quelque fois un truc et quelques fois non, c'est pas très logique, mais au niveau des perf, c'est la meme chose...

Je ne parle pas du côté performances, c'est clair que ça change rien... Mais du fait qu'une fonction ne doit contenir le mot clé return que dans le cas où celle ci renvoie une valeur, et est donc appelé par : $var = function();
M'enfin chui bien d'accord que ça n'apporte pas grand chose dans ce cas donc je n'insisterais pas d'avantage.

EDIT : Un topic PHP6 ça vous dirait ? pour éviter de polluer celui ci.
 
Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
  Lien vers ce message 30 Aout 2008, 20:06
Voeux exhaussés ^^


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Volcan
Avatar de Sékiltoyai
  • Age : 20 ans
  • Messages : 1033
  • Inscrit : 19 Septembre 2006
  Lien vers ce message 30 Aout 2008, 20:25
Je ne me suis pas renseigné sur le sujet.
En tous cas ifsetor() est une excellente idée…
Pour le goto, en effet, c'est plus … discutable, il faudrait voir pour pallier à quoi il a été mis en place…


http://www.phpfrance.com : Support francophone PHP et Web.
http://sekil.labrute.fr/
 
Volcan
Avatar de Talus
  • Age : 20 ans
  • Messages : 1548
  • Inscrit : 28 Septembre 2006
  Lien vers ce message 30 Aout 2008, 21:12
Merci tonton Korko ^^

En fait, le truc, c'est que y'a de plus en plus de choses qui étaient, à l'origine prévues pour PHP6, et qui sont incluses dans PHP5.3... Citons par exemple les espaces de noms, qui remplacera les imitations actuellement en place (genre le systeme de classes statiques qu'il y a actuellement dans FSB2).

Et ce qui va etre cool, c'est l'utf8 §§.


 
Equipe des MODS
Avatar de Grummfy
  • Age : 23 ans
  • Messages : 5456
  • Inscrit : 16 Septembre 2004
  Lien vers ce message 30 Aout 2008, 21:22
php6 c'est surtout php5 + unicode ....


"La gravité est le bonheur des imbéciles" Charles de Montesquieu > "T'as raison, L'apesanteur c'est plus rigolo" Hébus de Phalompe (Troll de Troy)
http://www.grummfy.com/download/crea/smileys/fsb2.gif Mods fsb1 - Mods fsb2 - Mon forum - Grummfy's project
 
Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
  Lien vers ce message 30 Aout 2008, 21:35
+espaces de noms +heritage multiple ...

Moi j'aime bien les classes statiques, prend la classe Maths sous Java, la majorité des méthodes sont statiques.

Mais l'heritage multiple et le break label ça fou tout en l'air là...


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Equipe de support
Avatar de B.Moncef
  • Age : 17 ans
  • Messages : 1926
  • Inscrit : 10 Septembre 2005
  Lien vers ce message 30 Aout 2008, 22:13
L'héritage multiple personnellement je n'en ai jamais eu besoin donc je n'en vois pas forcément l'utilité, mais peut-être que pour d'autres...

php6 c'est surtout php5 + unicode ....

Les espaces de noms sont importants aussi, ainsi que les "retraits" (les trucs enlevés), surtout magic_quotes (bien que certains trouvent ce choix contestable, il est évident que c'est au développeur de faire attention à la sécurité de son script, pas au langage)
d'autres trucs plus ou moins obsolètes : register_long_variables, short_tags, register_globals, ...

par contre je ne sais pas si ça a été confirmé, les fonctions relatives aux SGBD vont dans PECL.
 
Répondre


.