Page 1 sur 1

La meilleur syntaxe ?

Posté : 11 mai 2007, 20:55
par dunbar
Bonsoir,

Je voudrais savoir quelle est la meilleurs syntaxe et pourquoi ? :?:
echo "Adresse de connexion : ".$ip." <br>" ;
echo "Hôte : ".$host."" ;
Ou
echo "Adresse de connexion : $ip <br>" ;
echo "Hôte : $host" ;
Merci :wink:

Posté : 11 mai 2007, 21:51
par Ultim4T0m
Il faut sortir les variables des chaines, rien que pour la clarté de ton code quand tu relis ;)

Donc voici la meilleure syntaxe.
echo "Adresse de connexion : ".$ip." <br />";
echo "Hôte : ".$host; 
Des plus compétents pourront sans doute apporter plus de précisions.

Posté : 11 mai 2007, 22:04
par dunbar
Il faut sortir les variables des chaines, rien que pour la clarté de ton code quand tu relis ;)

Donc voici la meilleure syntaxe.
echo "Adresse de connexion : ".$ip." <br />";
echo "Hôte : ".$host; 
Des plus compétents pourront sans doute apporter plus de précisions.
Merci :)

Posté : 11 mai 2007, 22:40
par sylvaing26
Ultim4T0m a raison, il vaut mieux privilègier la concatenation

Posté : 12 mai 2007, 11:42
par Ryle
C'est plus propre, avec les couleurs c'est plus lisible, ca évite les erreurs de variables non interprétées quand on utilise des apostrophes pour délimiter ses chaines, ...

Maintenant tant que c'est possible, je dirais que le mieux ce serait ça :
Adresse de connexion : <?php echo $ip; ?><br />
Hôte : <?php echo $host; ?>
Mais c'est plus une question de contexte.. personellement si c'est juste pour deux lignes au milieu d'une boucle, je préfère faire un echo en php que de refermer et réouvrir pour faire du html (c'est surtout parce que j'arrive jamais à trouver une indentation qui me convienne dans ces cas là ;))

Posté : 12 mai 2007, 11:49
par dunbar
C'est plus propre, avec les couleurs c'est plus lisible, ca évite les erreurs de variables non interprétées quand on utilise des apostrophes pour délimiter ses chaines, ...

Maintenant tant que c'est possible, je dirais que le mieux ce serait ça :
Adresse de connexion : <?php echo $ip; ?><br />
Hôte : <?php echo $host; ?>
Mais c'est plus une question de contexte.. personellement si c'est juste pour deux lignes au milieu d'une boucle, je préfère faire un echo en php que de refermer et réouvrir pour faire du html (c'est surtout parce que j'arrive jamais à trouver une indentation qui me convienne dans ces cas là ;))
Ryle tout est en php :wink: je voulais juste avoir des avis de pro pour la syntaxe
$ip   ou ".$ip."  
Et surtout que je trouvais bizarre que dans PHP5 Avancé il donne comme exemple
 $ip 
Mais bon :!:
JE vais continuer comme régulièrement conseiller sur le site de PHPfrance
".$ip."

Merci à tous

Posté : 12 mai 2007, 11:55
par Hubert Roksor
Ultim4T0m a raison, il vaut mieux privilègier la concatenation
D'ailleurs pour echo la concaténation n'est pas nécessaire car il accepte un nombre illimité d'arguments, donc vous pouvez faire :
echo 'Adresse de connexion : ', $ip, ' <br />';
echo 'Hôte : ', $host;
Et au cas où vous vous poseriez la question, les single-quotes ' sont aussi rapide que les doubles ", tant qu'il n'y a pas de variables dans la chaîne ça ne change rien simple ou double (j'utilise les simples par habitude). J'avais fait quelques tests à ce sujet, je vous donne les chiffres pour 100 000 itérations.

Code : Tout sélectionner

0.2717 echo "You can't compare $fruit1 to $fruit2"; 0.2766 echo "You can't compare {$fruit1} to {$fruit2}"; 0.1523 echo "You can't compare " . $fruit1 . ' to ' . $fruit2; 0.1301 echo "You can't compare ", $fruit1, ' to ', $fruit2; 0.1421 ?>You can't compare <?php echo $fruit1; ?> to <?php echo $fruit2; 0.1449 echo "You can't compare "; echo $fruit1; echo ' to '; echo $fruit2;

Posté : 12 mai 2007, 12:00
par dunbar
echo 'Adresse de connexion : ', $ip, ' <br />';
echo 'Hôte : ', $host;
J'avais déjà des doutes avec deux exemples et il arrive avec un troixième :P mais je retient qu'une bonne concatenation est souhaitable :wink:

Posté : 12 mai 2007, 12:03
par dunbar
Et au cas où vous vous poseriez la question, les single-quotes ' sont aussi rapide que les doubles ", tant qu'il n'y a pas de variables dans la chaîne ça ne change rien simple ou double (j'utilise les simples par habitude). J'avais fait quelques tests à ce sujet, je vous donne les chiffres pour 100 000 itérations.

Code : Tout sélectionner

0.2717 echo "You can't compare $fruit1 to $fruit2"; 0.2766 echo "You can't compare {$fruit1} to {$fruit2}"; 0.1523 echo "You can't compare " . $fruit1 . ' to ' . $fruit2; 0.1301 echo "You can't compare ", $fruit1, ' to ', $fruit2; 0.1421 ?>You can't compare <?php echo $fruit1; ?> to <?php echo $fruit2; 0.1449 echo "You can't compare "; echo $fruit1; echo ' to '; echo $fruit2;
Pourrais tu me dire comment tu effectue les tests stp :?:
Ca pourrais être utile de le savoir :!:

Merci

Posté : 12 mai 2007, 12:12
par Hubert Roksor
Un truc que j'utilise pour mes propres tests, je l'ai posté dans ce sujet.

Posté : 12 mai 2007, 14:48
par dunbar
Un truc que j'utilise pour mes propres tests, je l'ai posté dans ce sujet.
Merci :)