Разверните строку с помощью \ r \ n & \ n & \ r сразу?

Я хочу разделить строку по строкам, но я хочу, чтобы она была основана на всех основных используемых символах разрыва строки:

  • \ п
  • \ Г \ п

И верните массив, содержащий каждую строку.

Вместо этого вы можете использовать регулярное выражение и preg_split :

 $lines = preg_split('/\n|\r\n?/', $str); 

Регулярное выражение \n|\r\n? соответствует либо LF, либо CR, за которым может следовать LF.

preg_split('/\R/', $str);

В PHP preg_split (), preg_match и preg_replace \R соответствует всем разрывам строк любого типа.

http://www.pcre.org/pcre.txt

По умолчанию последовательность \ R в шаблоне соответствует любой последовательности строк Unicode, независимо от того, что было выбрано в качестве последовательности окончания строки. Если вы укажете

–enable-BSR-anycrlf

по умолчанию изменяется так, что \ R соответствует только CR, LF или CRLF. Что бы вы ни выбрали, когда PCRE был создан, можно переопределить при вызове функций библиотеки.

Вы можете заменить все символы разрыва символов уникальным заполнителем, а затем взорвать строку в массиве, сделав что-то вроде этого:

 $my_string = preg_replace(array('/\n/', '/\r/'), '#PH#', $my_string); $my_array = explode('#PH', $my_string);