我想按行分割字符串,但我希望它基于所有主要使用的换行符:
返回包含每一行的数组。
答案 0 :(得分:39)
答案 1 :(得分:23)
preg_split('/\R/', $str);
在PHP preg_split(),preg_match和preg_replace中,\R
匹配任何类型的所有换行符。
默认情况下,模式中的序列\ R匹配任何Unicode换行符 无论选择什么作为行结束序列。如果 你指定
- 使能BSR-anycrlf
默认值已更改,因此\ R仅匹配CR,LF或CRLF。什么- 在构建PCRE时选择永远是可以在库中重写的 函数被调用。
答案 2 :(得分:1)
您可以使用唯一的占位符替换所有出现的中断字符,然后在数组中展开字符串,执行以下操作:
$my_string = preg_replace(array('/\n/', '/\r/'), '#PH#', $my_string);
$my_array = explode('#PH', $my_string);
答案 3 :(得分:0)
爆炸字符串,删除修剪功能之类的空格
preg_split('/\n|\r\n?\s*/', $string)