Question sur le <?=

Jerem
Invité n'ayant pas de compte PHPfrance

27 avr. 2007, 15:10

Bonjour,

Je viens de voir un script qui utilise, au lieu du traditionnel
<?php echo $variable; ?>
Ceci :
<?= $variable ?>
J'ai constaté que ca marchait bien, mais je me pose quelques questions : est-ce rigoureusement bien écrit, y-a-t-il des risques ... bref est-ce un raccourci d'écriture correct ?

Je vous remercie :)

Mammouth du PHP | 555 Messages

27 avr. 2007, 15:15

Salut,
On peut utiliser des dizaines de formes différentes pour les balises php mais la plus correcte et la plus rapide reste <?php ?>
On a par exemple <? ?> mais qui peut se confondre avec d'autres langages car déjà pas mal utilisé.
On a aussi <script language="php"> </script> mais ces balises sont lourdes comme pas possible...
Voir le début de cet article pour une explication plus complète
http://www.phpdebutant.org/article14.php
Voila bons début en php!
A+ et bon surf!!!!

Invité
Invité n'ayant pas de compte PHPfrance

27 avr. 2007, 15:26

Bonjour,

Ma question n'est pas la, je sais que le <? est équivalent au <?php ; mais ce que je voulais savoit c'est à quoi sert le ' = ' dans <?=

Est-ce qu'il remplace un echo ?

Bonjour,

Je viens de voir un script qui utilise, au lieu du traditionnel
<?php echo $variable; ?>
Ceci :
<?= $variable ?>
J'ai constaté que ca marchait bien, mais je me pose quelques questions : est-ce rigoureusement bien écrit, y-a-t-il des risques ... bref est-ce un raccourci d'écriture correct ?

Je vous remercie :)

Mammouth du PHP | 19672 Messages

27 avr. 2007, 15:38

On appelle ça les short open tag et c'est vivement déconseillé de les utiliser : si en local tu peux configurer ta machine comme tu veux, n'oublie cependant jamais que sur un serveur de production, tu n'auras pas forcément accès à cette configuration et si la directive short_open_tag est à OFF, tu devras reprendre tous tes codes pour mettre la version conventionnelle si tu veux que ton application fonctionne sans afficher le PHP directement dans ta page web.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Jerem
Invité n'ayant pas de compte PHPfrance

27 avr. 2007, 15:41

Je te remercie pour ta réponse :wink:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

27 avr. 2007, 15:41

Outre les inconvénients que peut entrainer l'utilisation des short open tags, la syntaxe "<?= "valeur" ?>" correspond effectivement bien à "<? echo "valeur"; ?>". Pas besoin du echo, pas besoin de point virgule :)

Ps : et au pire, si le serveur impose l'utilisation des tags normaux, il existe de nombreux éditeurs qui permettent de rechercher et remplacer des chaines dans des fichiers.. il est toujours possible de leur faire rechercher l'un et de le remplacer par l'autre sans se fatiguer plus que ça ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...