nl2br -> nl2p functie
Ik heb een mysql tabel met een artikel. Ik gebruik daarvoor de functie nl2br() om de \n te veranderen in <br /> Nu wil ik als er een new line komt, de twee <br /><br /> worden vervangen door een <p>tekst</p>
Op internet zag ik wel een aantal van deze functies, maar geen een waar bij een normale enter de <br /> bleef staan. Daar maakte ze dan <p></p> van...
dit is een voorbeeld van de output die ik zou willen hebben:
Heeft iemand hier een oplossing voor?
Alvast erg bedankt!!
Dirk
Niet getest, maar zoiets zou moeten werken ;-)
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
if(preg_match('/<br \/><br \/>(.*)<br \/><br \/>/', $text, $matches))
{
echo '<p>' . $matches[1] . '</p>';
}
?>
if(preg_match('/<br \/><br \/>(.*)<br \/><br \/>/', $text, $matches))
{
echo '<p>' . $matches[1] . '</p>';
}
?>
groeten,
Dirk
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
function nl2p ( $tekst )
{
$tekst = nl2br ( $tekst );
$tekst = str_replace ( '<br /><br />' , '</p><p>' , $tekst );
$tekst = '<p>' . $tekst . '</p>';
return $tekst;
}
$tekst = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In sem nunc, ultrices ut, convallis at, scelerisque eu, massa. Proin tempus sollicitudin sapien. Pellentesque ultricies nulla ac felis consectetuer tempus.
Nunc pharetra, turpis ac molestie vehicula, libero ligula posuere quam, vitae condimentum ligula lectus ac mauris. Fusce elementum. Nullam libero nisl, blandit a, congue ultrices, placerat ut, eros.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam sed diam.
Quisque congue ultrices quam. Ut porttitor turpis condimentum turpis. Donec quam.
Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus commodo ultrices dui.';
$tekst = nl2p ( $tekst );
echo htmlentities ( $tekst );
/*
••Output:
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In sem nunc, ultrices ut, convallis at, scelerisque eu, massa. Proin tempus sollicitudin sapien. Pellentesque ultricies nulla ac felis consectetuer tempus. <br /> Nunc pharetra, turpis ac molestie vehicula, libero ligula posuere quam, vitae condimentum ligula lectus ac mauris. Fusce elementum. Nullam libero nisl, blandit a, congue ultrices, placerat ut, eros. <br /> <br /> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam sed diam. <br /> Quisque congue ultrices quam. Ut porttitor turpis condimentum turpis. Donec quam. <br /> Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus commodo ultrices dui.</p>
*/
?>
function nl2p ( $tekst )
{
$tekst = nl2br ( $tekst );
$tekst = str_replace ( '<br /><br />' , '</p><p>' , $tekst );
$tekst = '<p>' . $tekst . '</p>';
return $tekst;
}
$tekst = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In sem nunc, ultrices ut, convallis at, scelerisque eu, massa. Proin tempus sollicitudin sapien. Pellentesque ultricies nulla ac felis consectetuer tempus.
Nunc pharetra, turpis ac molestie vehicula, libero ligula posuere quam, vitae condimentum ligula lectus ac mauris. Fusce elementum. Nullam libero nisl, blandit a, congue ultrices, placerat ut, eros.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam sed diam.
Quisque congue ultrices quam. Ut porttitor turpis condimentum turpis. Donec quam.
Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus commodo ultrices dui.';
$tekst = nl2p ( $tekst );
echo htmlentities ( $tekst );
/*
••Output:
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In sem nunc, ultrices ut, convallis at, scelerisque eu, massa. Proin tempus sollicitudin sapien. Pellentesque ultricies nulla ac felis consectetuer tempus. <br /> Nunc pharetra, turpis ac molestie vehicula, libero ligula posuere quam, vitae condimentum ligula lectus ac mauris. Fusce elementum. Nullam libero nisl, blandit a, congue ultrices, placerat ut, eros. <br /> <br /> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam sed diam. <br /> Quisque congue ultrices quam. Ut porttitor turpis condimentum turpis. Donec quam. <br /> Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus commodo ultrices dui.</p>
*/
?>
Gewijzigd op 01/01/1970 01:00:00 door K i p