<table cellspacing="0" cellpadding="0"><tr><td class="t_f" id="postmessage_35148"> コードソース: Xiaomo (自分) <br> GBK の場合は UTF-8 に準拠します <br>に変更します <span>$content .= $str[$sing].$str[$sing+1];</span> <br> $sing += 3; が $sing += 2; に変更されました。 <span></span> <br> <span></span> <div class="blockcode"> <div id="code_q41"><ol> <li> /**</li> <li> * 中国語と英語のインターセプト</li> <li> * @param string インターセプトする文字列</li> <li> * @param string インターセプトする長さ(合計長を超える場合は合計長として計算されます)</li> <li> * @param [文字列] (オプション) 開始位置 (最初は 0)</li> <li> * @return string</li> <li> * @author Xiaomo 244349067@qq.com</li> <li>*/</li> <li> function mixSubstr($str, $length, $start=FALSE)</li> <li>{</li> <li> if( ! $length){</li> <li> return false;</li> <li> }</li> <li> </li> <li> $strlen = strlen( $str);</li> <li> $content = '';</li> <li> $sing = 0;</li> <li> $count = 0;</li> <li> </li> <li> if($length > $strlen) {</li> <li> $length = $strlen;</li> <li> }</li> <li> if($start > ;= $strlen) {</li> <li> return false;</li> <li> }</li> <li> </li> <li> while($length != ($count-$start))</li> <li> {</li> <li> if(ord($str[$sing]) > 0xa0) {</li> <li> if( !$start || $start <= $count) {</li> <li> $content .= $str[$sing].$str[$sing+1].$str[$sing+2];</li> <li> }</li> <li> $sing + = 3;</li> <li> $count++;</li> <li> }else{</li> <li> if(!$start || $start <= $count) {</li> <li> $content .= $str[$sing];</li> <li> }</li> <li> $sing++;</li> <li> $count++; </li> <li> }</li> <li> }</li> <li> return $content;</li> <li>}</li> </ol></div> <em onclick="copycode($('code_q41'));">コードをコピー</em> </div> </td></tr></table> <div id="comment_35148" class="cm"> </div> <div id="post_rate_div_35148"></div> <br><br>