如何在 PHP 中找到换行符?

7

抱歉,我对PHP还不是很熟练,我尝试使用以下代码来查找并将每一行放入数组中。

$translate="this
is in
multiple
lines";
$lastBreak=0;
$it=array();
$ci=0;
for ($i=1;$i<strlen($translate);$i++) {
    if strchr(substr($translate,$i,$i),"\n") {
        $it[$ci]=substr($translate,$lastBreak+1,$i-1);
        $ci+=1;
        $lastBreak=$i;
    }
}

help?

3个回答

16

1
为了处理所有的行分隔符,请在 preg_split 中使用正则表达式: $arry_lines = preg_split("/[\r|\n]+/", $translate); - dfmiller

5

更新时间:

在IT技术中,有时会出现意料之外的换行问题,以下变化可能会有所帮助:

$arry_lines = explode("[\n|\r]", $translate);

2
split 已经在 PHP 5.3 中被弃用,不应再使用。 - deceze
3
explode函数不支持正则表达式,应该使用preg_split代替:$arry_lines = preg_split("/[\r|\n]+/", $translate); - dfmiller

0
你可以使用 $string = nl2br($string) 的方式,将换行符转换为


<br />. 

然后你可以操作这个字符串,例如通过第一次出现的

将其分割。
<br />

像这样:

list($first, $second) = explode('<br />', $string, 2);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接