solution de Palantir ne fonctionnera que si les lignes se terminent par \ n (fin de ligne par défaut Linux).
Par exemple.
$text = "A\r\nB\r\nC\nD\rE\r\nF";
$splitted = explode("\n", $text);
var_dump($splitted);
va afficher:
array(5) {
[0]=>
string(2) "A "
[1]=>
string(2) "B "
[2]=>
string(1) "C"
[3]=>
string(4) "D E "
[4]=>
string(1) "F"
}
Dans le cas contraire, vous devez utiliser ceci:
$text = "A\r\nB\r\nC\nD\rE\r\nF";
$splitted = preg_split('/\r\n|\r|\n/', $text);
var_dump($splitted);
Ou ceci:
$text = "A\r\nB\r\nC\nD\rE\r\nF";
$text = str_replace("\r", "\n", str_replace("\r\n", "\n", $text));
$splitted = explode("\n", $text);
var_dump($splitted);
Je pense que le dernier sera plus rapide car il n'utilise pas d'expressions régulières.
Par exemple.
$notes = str_replace(
"\r",
"\n",
str_replace("\r\n", "\n", $_POST[ 'notes' ])
);
$notes = explode("\n", $notes);