可以使用PHP的explode函数将字符串按照换行符分割成数组,然后遍历数组,对每个元素进行长度判断和分割处理。具体实现如下:

$str = '这是一段
需要分割
的字符串
';
$arr = explode('\n', $str); // 将字符串按照换行符分割成数组

$result = '';
foreach ($arr as $line) {
    $len = mb_strlen($line, 'utf-8'); // 获取字符串长度,注意要使用mb_strlen函数避免中文乱码问题
    if ($len <= 90) {
        // 字符串长度小于等于90,直接添加到结果中
        $result .= $line . '\n';
    } else {
        // 字符串长度大于90,按照90长度分割
        $sublines = str_split($line, 90);
        foreach ($sublines as $subline) {
            $result .= $subline . '\n';
        }
    }
}

echo $result;

在上面的代码中,使用了mb_strlen函数获取字符串长度,避免了中文乱码问题。同时,使用了str_split函数将字符串按照指定长度分割成子串,然后再添加到结果中。最终输出的字符串中,每个子串都是按照90长度分割的,并且保证不会出现乱码问题。

PHP 字符串按换行分割,90 字符长度截断,解决乱码问题

原文地址: https://www.cveoy.top/t/topic/kq2f 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录