PHP 字符串按换行分割,90 字符长度截断,解决乱码问题
可以使用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长度分割的,并且保证不会出现乱码问题。
原文地址: https://www.cveoy.top/t/topic/kq2f 著作权归作者所有。请勿转载和采集!