Maison >développement back-end >tutoriel php >PHP截取中文字符出现乱码的具体解决办法_PHP教程
PHP截取中文字符无乱码的相关代码:
<ol class="dp-xml"> <li class="alt"><span><span>function cnSubstr($str, $start, $len) { </span></span></li> <li> <span>$</span><span class="attribute">str_tmp</span><span> = $len - $start; </span> </li> <li class="alt"> <span>if (strlen($str) </span><span class="tag"><span> $str_tmp) { </span></span> </li> <li> <span>$</span><span class="attribute">tmpstr</span><span> = $str; </span> </li> <li class="alt"><span>} else { </span></li> <li> <span>$</span><span class="attribute">tmpstr</span><span> = </span><span class="attribute-value">""</span><span>; </span> </li> <li class="alt"> <span>$</span><span class="attribute">strlen</span><span> = $start + $len; </span> </li> <li> <span>for($</span><span class="attribute">i</span><span> = </span><span class="attribute-value">0</span><span>; $i </span><span class="tag"><span> $strlen; $i++) { </span></span> </li> <li class="alt"> <span>if(ord(substr($str, $i, 1)) </span><span class="tag">></span><span> 0xa0) { </span> </li> <li> <span>$tmpstr </span><span class="attribute">.</span><span>= </span><span class="attribute-value">substr</span><span>($str, $i, 2); </span> </li> <li class="alt"><span>$i++; </span></li> <li><span>} else { </span></li> <li class="alt"> <span>$tmpstr </span><span class="attribute">.</span><span>= </span><span class="attribute-value">substr</span><span>($str, $i, 1); </span> </li> <li><span>} </span></li> <li class="alt"><span>} </span></li> <li> <span>$tmpstr </span><span class="attribute">.</span><span>= </span><span class="attribute-value">".."</span><span>; </span> </li> <li class="alt"><span>} </span></li> <li><span>return $tmpstr; </span></li> <li class="alt"><span>} </span></li> </ol>
以上这段代码就是PHP截取中文字符无乱码的具体实现方法,希望对大家有所帮助。