2009-12-22 3 views
0

Je suis novice en PHP j'ai écrit le programme suivant:Problème sortie PHP impression sur plusieurs lignes

$address=array('[email protected]','[email protected]','[email protected]'); 

foreach($address as $value) 
{ 
    echo "processing $value\n"; 
} 

Si vous voyez que j'ai \n dans l'instruction echo mais je ne reçois pas la sortie sur une nouvelle ligne. Comment puis-je obtenir chaque sortie sur une nouvelle ligne?

+0

Je ne vois aucun code; Je ne vois que la balise PHP de fermeture, rien d'autre. – kiamlaluno

Répondre

0

La ligne sera rompue correctement lorsque vous affichez la source, mais pas dans l'affichage HTML. Comme mentionné, vous devez utiliser le nœud <br/> pour HTML

7

Si vous utilisez cette sortie au format HTML, vous devez bien sûr utiliser une coupure HTML <br />.

4

Si vous travaillez dans un navigateur, vous devez briser les lignes avec

<br> 
+0

l'a obtenu grâce à son travail pouvez-vous élaborer s'il vous plaît pourquoi est-ce le cas? et comment ça marche? – Josh

+0

Si vous deviez voir la source depuis le navigateur, vous verriez de nouvelles lignes dans la source, \ n ne fonctionnera comme nouvelle ligne dans un navigateur que s'il est à l'intérieur des balises

, sinon la façon html de faire un retour à la ligne est 
Tim

+3

Les navigateurs ignorent le formatage du texte (sauts de ligne, espaces vides, etc.) en HTML pour permettre au formatage d'être lisible par les humains (autrement, les paragraphes géants devraient être sur une ligne, et toutes sortes d'autres mess). Vous pouvez afficher les blocs de texte préformatés en les plaçant dans les balises '

 ...
', ou en définissant le CSS d'un élément sur 'white-space: pre;' – Dereleased

2

Vous devez imprimer une saut de ligne HTML à la place:

<br/> 

Puisque vous imprimez sur un navigateur

+0

mais nous travaillons en PHP non? si cant PHP diriger le navigateur pour laisser une ligne? je suis désolé semble que je demande des choses très élémentaires;) – Josh

0

Vous souhaiterez peut-être envelopper votre sortie dans une balise <pre> car votre navigateur attend du code HTML et ne fait qu'effleurer les espaces. La balise pré reflétera l'espace (\ t \ n etc);

Vous pouvez également utiliser une étiquette de rupture ou envelopper les données dans un élément d'affichage de bloc. (par exemple: <p> ou <div>)

+0

Rappelez-vous, SO accepte du HTML comme balisage pour le formatage, toujours l'envelopper avec des guillemets ('). – Dereleased

+0

Merci! Gardera à l'esprit dans les prochains messages. – sparkey0

Questions connexes