Al enviar a un área de texto, debe llamar a htmlentities
htmlspecialchars
si su texto contiene HTML.
<textarea><?php echo htmlspecialchars($text); ?></textarea>
Eso convertirá tu <br />
a <br />
. Si dejas el <br />
sin codificar, simplemente se interpretarán como HTML.
Si su objetivo es mostrar <br />
u otro HTML en el área de texto tal como está escrito en la base de datos, debe escapar todo el código que, de lo contrario, se interpretaría como HTML.
editar
Si desea generar saltos de línea en lugar de <br />
puedes usar str_replace
:
<textarea><?php echo str_replace('<br />', "\r\n", $textarea); ?></textarea>
Pero recuerde que todos los demás HTML se interpretarán y no se mostrarán. Creo que debería resolver su problema en la fuente y almacenar el CRLF en la base de datos si no necesita el HTML.