br2nl podwojone przejścia

0

czesc, nie potrafie sobie poradzic z poprawnym dzialaniem funkcji br2nl. mam taki kod z neta:

function br2nl($string)
	{
		return preg_replace('#<br\s*?/?>#i', "\n", $string); 
	}

i jak wstawie do textarea to zamiast 4 enterow to robi mi 8. nie wiem co mam zrobix. jak daje bez tej funkcji to robi mi 4 entery, a z nia 8.

0

rozwiązane - wystarczylo zrobic zamiane na pusy ciag a nie na \n

0

nie wiem czy zdajesz sobie sprawę ale jak masz tekst:

<br/>
<br/>
<br/>
<br/>

to tak na prawdę znaczy on: <br/>\n<br/>\n<br/>\n<br/>\n
dlatego po zamianie miałeś 8 "enterów". z kolei gdy masz ciąg <br/><br/><br/><br/> to używając twojego rozwiązania dostaniesz po prostu pusty ciąg.
proponuje użyć takiego wyrażenia:

preg_replace('#<br\s*?/?>([\n]?)#i', "\n", $string);

1 użytkowników online, w tym zalogowanych: 0, gości: 1