Comment puis-je écho HTML en PHP?
Je veux conditionnellement sortie HTML pour générer une page, alors, quel est le moyen le plus facile pour faire écho multiligne des fragments de code HTML en PHP 4+? J'ai besoin d'utiliser un framework de template comme Smarty?
echo '<html>', "\n"; //I'm sure there's a better way!
echo '<head>', "\n";
echo '</head>', "\n";
echo '<body>', "\n";
echo '</body>', "\n";
echo '</html>', "\n";
- \n ne fonctionne pas dans le html. Je suppose que vous vouliez dire echo "<br>";
- Bon pracitice dire à separete votre logique à partir de la vue (comme dans MVC). utilisation templetig moteur comme Twig pour separete votre point de vue de la logique de script - twig.sensiolabs.org Place de la mise en œuvre de votre balisage html de votre script php de le faire en sens inverse. Mettre en œuvre des variables php à twig temple. Dès que vous obtenez ce que je veux dire vous verrez les avantages de cette approche. Brindille de résoudre ce genre de problèmes. Pour les petites chank de code, vous pouvez écrire votre propre extension twig que vous pouvez ensuite utiliser dans secounds à jouer certains compliqué mais repetative tâches.
- Double Possible de Comment utiliser php echo avec javascript ou html? Ou php et html du document.écrire?
Vous devez vous connecter pour publier un commentaire.
Il y a quelques façons d'echo HTML en PHP.
1. Entre les balises PHP
2. Dans un écho
Avec les echos, si vous souhaitez utiliser des guillemets dans le HTML, vous devez utiliser des guillemets simples echos de la sorte:
Ou vous pouvez échapper de la sorte:
3. Heredocs
4. Nowdocs (depuis PHP 5.3.0)
Moteurs de Template sont utilisés pour l'utilisation de PHP dans les documents qui contiennent principalement du HTML. En fait, PHP but initial était d'être un langage de templating. C'est pourquoi avec PHP, vous pouvez utiliser des choses comme les balises courtes à l'écho des variables (par exemple,
<?=$someVariable?>
).Il y a d'autres moteurs de template (comme Smarty, Twig, etc.) qui font la même syntaxe plus concise (par exemple
{{someVariable}}
).Le principal avantage d'utiliser un moteur de template est de garder le design (Présentation de la Logique) distinct du codage (Logique). Cela rend le code plus propre et plus facile à maintenir dans le long terme.
Si vous avez plus de questions n'hésitez pas à laisser un commentaire.
Plus de lecture est disponible sur ces choses dans le La Documentation PHP.
Que Dieu Te Bénisse!
REMARQUE: PHP balises courtes
<?
et?>
sont déconseillés, car ils ne sont disponibles que si l'option est activée avecshort_open_tag
php.ini fichier de configuration, ou si PHP a été configuré avec le--enable-short-tags
option. Ils sont disponibles, quel que soit le réglage de 5,4 à partir de.<?=$var?>
. Les balises courtes sont découragés, comme d'habitude, et doivent être supprimées (<? doStuff() ?>
).essayer comme ceci:
<?php $variable = "bla"; ?> <html> <body class="<?php echo $variable ?>"> </body> </html>
--- Alors j'ai pensé à un tas de supports ont disparu et n'était pas certain exactement où ils allaient aller. C'est toujours drôle quand mes légèrement plus âgés commentaires avoir répondu, car j'ai été très nouvelle à tout alors.Vous pouvez utiliser le autre syntaxe syntaxe alternative pour les structures de contrôle et de sortir de php:
Fondamentalement, vous pouvez mettre de l'HTML n'importe où en dehors des balises PHP. Il est également bénéfique de faire tout votre nécessaire de traitement des données avant de les afficher toutes les données, afin de séparer la logique et de la présentation.
L'affichage des données en elle-même pourrait être à la base d'un même fichier PHP ou vous pouvez inclure un fichier PHP séparé consistant la plupart du temps HTML.
Je préfère ce style compact:
Remarque: vous devrez peut-être utiliser
<?php echo $var; ?>
au lieu de<?=$var?>
en fonction de votre configuration de PHP.Je suis partielle de ce style:
Je dois utiliser les balises ASP-style, oui. Le mélange de PHP et de HTML a l'air super lisible à mes yeux. Le truc, c'est d'obtenir le
<%
et%>
marqueurs juste.Une autre approche est de mettre le code HTML dans un fichier séparé et marquer la zone à modifier avec un espace réservé [[contenu]] dans la présente affaire. (Vous pouvez également utiliser sprintf au lieu de la str_replace.)
Alternativement, vous pouvez simplement la production de tous les php trucs à l'écran capturé dans une mémoire tampon, puis écrire le code html, puis mettre le php de sortie de retour dans la page.
Il peut sembler étrange d'écrire du php, de l'attraper, puis d'écrire à nouveau, mais cela signifie que vous pouvez faire toutes sortes de formatage des trucs (Heredocs etc),& test il sort correctement, sans les tracas du modèle de page obtenir de la manière. (CMS Joomla est-il de cette façon, BTW)
c'est à dire:
Essayez Cela Peut Vous Aider.......
En plus de Chris B réponse, si vous avez besoin d'utiliser
echo
de toute façon, veulent toujours rester simple et structurée, et ne veulent pas de spam avec le code<?php stuff; ?>
's, vous pouvez utiliser la syntaxe ci-dessous.Par exemple, vous voulez afficher les images d'une galerie:
Echo prend plusieurs paramètres, donc avec une bonne indentation, il semble assez bon. Aussi à l'aide de
echo
avec des paramètres est plus efficace que la concaténation.ne pas faire echo HTML
si vous souhaitez utiliser
que vous devriez faire ceci:
Simplement utiliser impression fonction de l'écho de texte dans le fichier PHP comme suit
ou