Search code examples
phpnewlinecarriage-return

character separator for newline textarea


So evidently:

\n = CR (Carriage Return) // Used as a new line character in Unix
\r = LF (Line Feed) // Used as a new line character in Mac OS
\r\n = CR + LF // Used as a new line character in Windows
(char)13 = \n = CR // Same as \n

but then I also heard that for HTML textarea, when it's submitted and parsed by a php script, all new lines are converted to \r\n regardless of the platform

is this true and can I rely on this or am I completely mistaken?

ie. if I wanna do explode() based on a new line, can I use '\r\n' as the delimiter regardless of whether or not the user is using mac, pc, etc


Solution

  • All newlines should be converted in \r\n by the spec.

    So you could indeed do a simple explode("\r\n", $theContent) no matter the platform used.

    P.S.

    \r is only used on old(er) Macs. Nowadays Macs also use the *nix style line breaks (\n).