Satır sonlarını kaldırmak ve PHP BR etiketleri ekleyebilirsiniz

5 Cevap php

Ben her paragraf arasında bir <br> etiketi eklemek istiyorum hangi için aşağıdaki metni var. Ve ayrıca tüm satır sonlarını kaldır. PHP bunu nasıl yapardın? Teşekkürler.

Yani bu -

This is some text
for which I would
like to remove 
the line breaks.

And I would also 
like to place
a b>  tag after 
every paragraph.

Here is one more
paragraph.

Bu olacak -

This is some text for which I would like to remove the line breaks.<br/> And I would also like to place a br tag after every paragraph. <br> Here is one more paragraph.

NOT: Herhangi bir harf vurgulamasını geçiyoruz.

5 Cevap

Bu da, çalışması gerekir: (gerçi basit)

$string = str_replace("\n\n", "<br />", $string);
$string = str_replace("\n", "", $string);

Bu test edildi.

Peki, bu bir paragraf sınırlayıcı, boş bir çizgi düşünün görünüyor. Yani kolay çözüm bu gibi görünüyor:

$text  = str_replace( "\r", "", $text ); // this removes the unwanted \r
$lines = explode( "\n", $text ); // split text into lines.
$textResult = "";
foreach( $lines AS $line )
{
   if( trim( $line ) == "" ) $textResult .= "<br />";
   $textResult .= " " . $line;
}

Ben bu sorunu çözer düşünüyorum. $textResult sonucunuzu olurdu

echo str_replace(array("\n\n", "\n"), array("<br/>", " "), $subject);

Yukarıdaki bir uzaya <br/> etiketi ve herhangi bir sol üzerinde tek satırsonlarının (başlangıçta sadece birbiri içine çalışan bir satır ayrılmış kelimeler önlemek için) ile çift-satırsonlarını değiştirir.

Eğer CRLF (windows) tarzı satır sonları karşılamak için herhangi bir ihtiyaç olurdu; O (büyük ölçüde olmasa da) yaklaşımı değiştirmek biraz isterim.

Bu benim için öyle

$string = ereg_replace( "\n", "<br/>", $string);