Bei der Ausgabe in einen Textbereich müssen Sie htmlentities aufrufen htmlspecialchars wenn Ihr Text HTML enthält.
<textarea><?php echo htmlspecialchars($text); ?></textarea>
Dadurch wird Ihr <br /> konvertiert zu <br /> . Verlassen Sie den <br /> unkodiert werden sie einfach als HTML interpretiert.
Wenn Ihr Ziel darin besteht, <br /> anzuzeigen oder anderes HTML im Textbereich, wie es in der Datenbank geschrieben ist, müssen Sie allen Code maskieren, der andernfalls als HTML interpretiert würde.
bearbeiten
Wenn Sie anstelle von <br /> Zeilenumbrüche ausgeben möchten Sie können str_replace verwenden :
<textarea><?php echo str_replace('<br />', "\r\n", $textarea); ?></textarea>
Denken Sie jedoch daran, dass alle anderen HTML-Codes interpretiert und nicht angezeigt werden. Ich denke, Sie sollten Ihr Problem an der Quelle lösen und das CRLF in der Datenbank speichern, wenn Sie das HTML nicht benötigen.