Eh bien, il y a deux façons de voir les choses.
- Le code PHP n'est rien de plus qu'un ensemble d' instructions de traitement XML , et donc tout fichier avec une
.php
extension n'est rien de plus qu'un fichier XML qui se trouve être analysé pour le code PHP.
- Il se trouve que PHP partage le format d'instructions de traitement XML pour ses balises d'ouverture et de fermeture. Sur cette base, les fichiers avec des
.php
extensions PEUVENT être des fichiers XML valides, mais ils n'ont pas besoin de l'être.
Si vous croyez à la première route, tous les fichiers PHP nécessitent la fermeture des balises de fin. Les omettre créera un fichier XML non valide. Là encore, sans avoir une <?xml version="1.0" charset="latin-1" ?>
déclaration d' ouverture , vous n'aurez pas un fichier XML valide de toute façon ... Ce n'est donc pas un problème majeur ...
Si vous croyez au deuxième itinéraire, cela ouvre la porte à deux types de .php
fichiers:
- Fichiers contenant uniquement du code (fichiers de bibliothèque par exemple)
- Fichiers contenant du XML natif et également du code (fichiers modèles par exemple)
Sur cette base, les fichiers de code uniquement peuvent se terminer sans ?>
balise de fermeture . Mais les fichiers de code XML ne sont pas autorisés à se terminer sans fermeture ?>
car cela invaliderait le XML.
Mais je sais à quoi tu penses. Vous pensez à ce qui importe, vous n'allez jamais rendre un fichier PHP directement, alors peu importe si c'est du XML valide. Eh bien, cela importe si vous concevez un modèle. S'il s'agit d'un XML / HTML valide, un navigateur normal n'affichera tout simplement pas le code PHP (il est traité comme un commentaire). Vous pouvez donc simuler le modèle sans avoir à exécuter le code PHP dans ...
Je ne dis pas que c'est important. C'est juste un point de vue que je ne vois pas exprimé trop souvent, alors quel meilleur endroit pour le partager ...
Personnellement, je ne ferme pas les balises dans les fichiers de bibliothèque, mais dans les fichiers de modèle ... Je pense que c'est une préférence personnelle (et une directive de codage) basée plus que tout sur le dur ...