当我使用chunk_split()函数时,它会破坏我的口音字符和特殊字符,我想知道如何纠正这个问题?
这是我的PHP代码.
if(count($text) > 0) {
$text = implode(' ', $text);
echo chunk_split($text, 8, '<br />');
}
Run Code Online (Sandbox Code Playgroud)
被破坏的重音字符.
&a mp; 发布后 ÄÄââ ÒÒ ôô ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÎÎÎ ñ
chunk_split不是多字节安全的,并且没有本机mb_chunk_split.
http://php.net/manual/en/function.chunk-split.php
这是一个从php文档中的评论者那样做的功能:
<?php
//from Peter from dezzignz.com 05-Apr-2010 11:30 @ php.net
function mbStringToArray ($str) {
if (empty($str)) return false;
$len = mb_strlen($str);
$array = array();
for ($i = 0; $i < $len; $i++) {
$array[] = mb_substr($str, $i, 1);
}
return $array;
}
function mb_chunk_split($str, $len, $glue) {
if (empty($str)) return false;
$array = mbStringToArray ($str);
$n = 0;
$new = '';
foreach ($array as $char) {
if ($n < $len) $new .= $char;
elseif ($n == $len) {
$new .= $glue . $char;
$n = 0;
}
$n++;
}
return $new;
}
?>
Run Code Online (Sandbox Code Playgroud)