Meilleur moyen d'écho HTML en PHP
Je suis assez expérimenté codeur PHP, et me demande quelle est la meilleure façon d'écho de gros morceaux de code HTML est (meilleure pratique).
Est-il mieux pour ce faire:
<?php
echo "<head>
<title>title</title>
<style></style>
</head>";
?>
ou ceci:
<?php
define("rn","\r\n");
echo "<head>".rn
."<title>title</title>".rn
."<style></style".rn
."</head>".rn;
?>
J'ai tendance à utiliser la seconde, car il n'est pas gâcher l'indentation dans le source php. Est-ce la façon dont la plupart des gens le font?
source d'informationauteur Alex
Vous devez vous connecter pour publier un commentaire.
De l'OMI, La meilleure façon est généralement à stocker le code HTML séparément dans un fichier de modèle. C'est un fichier qui contient en général HTML avec quelques champs à remplir. Vous pouvez ensuite utiliser certains de template cadre sécuritaire de remplir les champs dans le document html en tant que de besoin.
Smarty est un cadre populaire, voici un exemple de comment cela fonctionne (prises de Smarty du cours intensif).
Fichier De Modèle
Code Php qui se connecte nom & adresse dans le fichier de modèle:
Côté de Smarty il y a des dizaines de des choix raisonnables pour la création de modèles de cadres pour l'adapter à votre goût. Certaines sont simples, beaucoup ont des caractéristiques sophistiquées.
Vous pouvez également placer votre code HTML à l'extérieur du bloc de code PHP:
N'oubliez pas, vous avez également accès à HEREDOC (http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc)
Aussi, je veux le regarder dans quelque chose comme Smarty templates - et, plus important, le modèle de conception MVC, qui prévoit la séparation de balisage de la logique métier.
utilisateur syntaxe heredoc
ou tout simplement échapper à partir de php du code html directement
?> ... <?php
Puisqu'il y a déjà suffisamment d'alternatives donné, j'avais juste un commentaire sur votre deuxième approche. Si vous voulez le faire avec de l'écho, il est préférable d'utiliser:
À l'aide de
PHP_EOL
au lieu d'une constante n'est pas la litière de la portée mondiale avec un superflu constante et rend également le retour à la ligne OS indépendant, car il utilise ce qui est défini pour le système d'exploitation PHP est en cours d'exécution sur.À l'aide des virgules au lieu de concaténation vous permet d'économiser de la mémoire en raison de PHP ne pas avoir à concaténer à tous, mais seulement pour chasser l'eau tout ce que vous jeter à l'écho.
Je pense que ni est la meilleure solution. En écho html n'est pas très lisible. J'ai toujours mettre le html en dehors des balises php. De cette façon, vous obtenez l'indentation, et c'est plus lisible.
Quelque chose comme ceci:
Et si vous voulez aller encore plus loin, vous pouvez utiliser un modèle de système de vraiment séparer la logique de la présentation.
La première forme est plus efficace, car il n'effectue pas de concaténation de chaîne (
.
).Si vous utilisez des guillemets pour afficher le code HTML, utilisez l'apostrophe 'car PHP recherche des variables dans les guillemets "qui est moins de la promotion pour montrer chaînes statiques.
Pour moi, la meilleure méthode reste l'une à l'extérieur du bloc PHP, certains aiment d'autres répondaient.
Aussi, n'oubliez pas le raccourci.
Cela a bien fonctionné pour moi!
Vous pouvez echo grande quantité de code HTML comme ceci en PHP.
Vous devez être sûr que c'est pas de " à l'intérieur du HTML. Le remplacer par " et ça va continuer!!