当我使用chunk_split()函数时,它会破坏我的重音字符和特殊字符,我想知道如何才能纠正这个问题?
这是我的PHP代码。
if(count($text) > 0) {
$text = implode(' ', $text);
echo chunk_split($text, 8, '<br />');
}被毁的重音字符。
&a mp;Post eré��çãã��áãã��¨��??��óóóá��øé��?
发布于 2011-01-14 05:32:15
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;
}
?>发布于 2011-01-14 05:32:37
尝试转换之前和之后的字符集,如下所示:
http://us3.php.net/manual/en/function.chunk-split.php#99316
https://stackoverflow.com/questions/4685492
复制相似问题