Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/11/2007, 14h38   #1
Modérateur
 
Avatar de Rakken
 
Inscription : août 2006
Messages : 1 207
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 207
Points : 1 137
Points : 1 137
Par défaut Utilité de la balise PHP fermante

Bonjour,

Je croise régulièrement dans du code php, des fichiers .php qui ne comportent pas de balise fermante.
Genre la premiere balise est <?php et nulle part il n'y a de ?>

Après m'être renseigné auprès de certaines personnes ne fermant pas leur balise php, il apparait que l'interet est d'être sur qu'il ne reste pas de ligne vide en fin de fichier (ce que provoquer des problèmes d'envoi de header par exemple).

Personellement, je ne trouve pas ca très propre de ne pas fermer, mais dans le doute je pose la question, qu'est ce qui est le mieux, fermer ou ne pas fermer la balise php ?
__________________
Rakken

Oneira, un monde imaginaire d'Heroic Fantasy.

Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/
Rakken est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2007, 15h20   #2
Membre du Club
 
Inscription : juillet 2003
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 69
Points : 68
Points : 68
c'est inutile de la fermer, et source d'erreur... pourquoi le faire ?



ne pas indenter son code est correct aussi, mais source d'erreur... personne ne le fait. c'est pareil pour moi.


si un jour tu bosse à plusieurs sur un projet, tu sera triste que tout le monde mette cette balise fermante le jours ou tu auras une erreur d'envoi de header et que tu devra vérifier tous les fichiers du projet pour les vérifier
parksto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2007, 15h20   #3
Membre du Club
 
Avatar de randimby
 
Inscription : décembre 2003
Messages : 64
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 64
Points : 57
Points : 57
Envoyer un message via MSN à randimby
Si tu veux éviter les espaces en fin de script, le mieux est de faire

Le return s'assure que tout code après, y compris les codes non PHP, ne seront pas traités.
randimby est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2007, 15h26   #4
Membre du Club
 
Avatar de randimby
 
Inscription : décembre 2003
Messages : 64
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 64
Points : 57
Points : 57
Envoyer un message via MSN à randimby
Citation:
Envoyé par parksto Voir le message
c'est inutile de la fermer, et source d'erreur... pourquoi le faire ?
Pas d'accord. Il est question de propreté. S'il est inutile de laver la vaisselle après avoir mangé, et qu'en plus, les laver augmente le risque de les casser, tu ne les laverais pas?
randimby est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/11/2007, 10h13   #5
Membre du Club
 
Inscription : juillet 2003
Messages : 69
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 69
Points : 68
Points : 68
je ne trouve justement pas très propre de dire à l'interpreteur php que le code php est terminé et qu'on repasse dans une zone à ne pas interpréter alors que celle-ci n'existe pas.


c'est ça pour moi l'utilité de la balise fermante.


à noter au passsage que zend (oui oui, eux même) déconseille d'utiliser cette balise fermante lorsqu'on peut s'en passer
Citation:
Pour les fichiers contenant uniquement du code PHP, le tag de fermeture ("?>") n'est jamais permis. Il n'est pas requis par PHP. Ne pas l'inclure permet de prévenir les problèmes liés à l'injection accidentelle d'espaces blancs dans la sortie.
(extrait des conventions de codage du zend framework)
parksto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/11/2007, 16h41   #6
Modérateur
 
Avatar de Rakken
 
Inscription : août 2006
Messages : 1 207
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 207
Points : 1 137
Points : 1 137
Après recherche dans la doc, je suis tombé la dessus

Et donc, dans la doc il est écrit que c'est optionnel, mais sans véritable préconisation...
En tout cas, ca n'est pas visiblement pas une "faute", même simplement de norme, de ne pas en mettre, même si je continue a trouver ce fonctionnement un peu limite.

Bref, je crois que je vais continuer a la mettre (ne pas le faire reste "optionnel", ca me donne aussi l'option de faire ce qui me semble propre ^^), mais je vais par contre arreter de raler sur ceux qui "l'oublie", volontairement ou non.

Merci ;-)
__________________
Rakken

Oneira, un monde imaginaire d'Heroic Fantasy.

Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/
Rakken est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h16.


 
 
 
 
Partenaires

Hébergement Web