2010-03-26 6 views
2

J'aime formater tout mon HTML avec des onglets pour la netteté et la lisibilité. Récemment j'ai commencé à utiliser PHP et maintenant j'ai beaucoup de sortie HTML qui vient entre les balises PHP. Ces lignes de sortie sont toutes alignées sur le côté gauche de l'écran. Je dois utiliser /n pour faire une ligne aller à la prochaine. Y at-il quelque chose comme ça pour forcer les onglets, ou n'importe quel moyen d'avoir une sortie HTML nette provenant de PHP?Comment sortir du HTML formaté à partir de PHP?

Répondre

4

Il y a le tidy extension qui vous aide à (re) formater votre sortie html.
Mais il a un peu de prix attaché à elle. L'analyse de la sortie et la construction d'un html dom ne sont pas vraiment gratuites.

edit: Peut être aussi que vous cherchez simplement le "caractère" \t. Par exemple.

<html> 
    <head><title>...</title></head> 
    <body> 
<?php 
    for($i=0; $i<10; $i++) { 
    echo "\t\t<div>$i;</div>\n"; 
    } 
?> 
    </body> 
</html> 

ou vous nid et indenter votre code php/html de manière que la sortie est bien en retrait. (Désolé pour l'exemple laid :)

<html> 
    <head><title>...</title></head> 
    <body> 
<?php for($i=0; $i<10; $i++) { ?> 
    <div><?php echo $i; ?></div> 
<?php } ?> 
    </body> 
</html> 
6

S'il y a de plus grands blocs relatifs de HTML restituent alors la syntaxe heredoc voulez-vous aider à formater le code html la façon dont vous voulez subjets beaucoup sur les onglets prendre la peine d'écho en utilisant php.

$html = <<<HTML 
<html> 
    <head><title>...</title></head> 
    <body> 
    <div>$phpVariable</div> 
    </body> 
</html> 
HTML; 

Si vous utilisez un autre outil pour analyser votre code html, rappelez-vous, il va également ajouter une charge supplémentaire de traitement et la charge utile de données pour chaque requête afin que vous pouvez le faire uniquement à des fins de débogage.

0
<html> 
    <head><title>...</title></head> 
    <body> 
<?php for($i=0; $i<10; $i++) { ?> 
    <div><?php echo $i; ?></div> 
<?php } ?> 
</body> 
</html> 

En fait, c'est un bon exemple, mais dans ce cas, il est préférable d'utiliser autre façon de faire les choses

<html> 
    <head><title>...</title></head> 
    <body> 
<?php for($i=0; $i<10; $i++): ?> // notice the colon 
    <div><?php echo $i; ?></div> 
<?php endfor; ?> 
</body> 
</html> 

Reference

Questions connexes