Remplacement des nouvelles lignes par des balises de saut HTML : dépannage
De nombreux utilisateurs de PHP rencontrent des difficultés lorsqu'ils tentent de remplacer les nouvelles lignes par
balises. Bien qu'il existe de nombreuses approches disponibles, notamment preg_replace(), str_replace() et nl2br() , certaines peuvent ne pas produire les résultats souhaités. Dans cet article, nous explorerons les causes potentielles de ce problème et proposerons une solution.
L'extrait de code fourni illustre trois méthodes courantes pour remplacer les nouvelles lignes. Cependant, l'auteur rapporte qu'aucune de ces approches n'a réussi, malgré le texte contenant des doubles sauts de ligne (« rr »). Cela suggère que le problème ne réside peut-être pas dans les méthodes choisies, mais dans le texte lui-même.
Après une enquête plus approfondie, il devient évident que la variable $description est entourée de guillemets simples ('). Contrairement aux guillemets doubles ("), les guillemets simples n'interprètent pas les séquences d'échappement, qui incluent le caractère de nouvelle ligne ("n"). Par conséquent, le texte reste inchangé.
Pour résoudre ce problème, le texte doit être entre guillemets doubles, permettant d'interpréter correctement les séquences d'échappement et de remplacer les nouvelles lignes par des balises
.
Voici un exemple d'utilisation de la fonction nl2br() avec des guillemets doubles. text :
<code class="php">$description = "Line one\r\rline two"; echo nl2br($description);</code>
Ce code remplacera toutes les occurrences de doubles nouvelles lignes par des balises
, produisant le texte formaté souhaité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!