function Cut_str($sourcestr,$cutlength) {
$returnstr ='';
$i=0;
$str_length=strlen($sourcestr);//文字列のバイト数
;$cutlength) and ($i{
$temp_str=substr($sourcestr,$i,1);//Get文字列
if ($ascnum>=224) の $i 番目の文字の ASCII コード //ASCII ビットが 224 より大きい場合、
{
//UTF-8 によるエンコーディング指定、連続する 3 文字は 1 文字としてカウントされます。
$returnstr=$returnstr.substr($sourcestr,$i,3); //実際のバイトは次のようにカウントされます。 3
$n; // 文字列の長さは 1
}
elseif ($ascnum>=192) //ASCII ビット高さが 192 に等しい場合、
{
// によるUTF-8 エンコード仕様では、連続する 2 つの文字を結合して 1 つの文字としてカウントされます。
$returnstr=$returnstr.substr($sourcestr,$i,2); //実際のバイトは 2 としてカウントされます。
$n; // 文字列の長さは 1
}
elseif ($ascnum>=65 && $ascnum{
$returnstr=$returnstr.substr($sourcestr ,$i,1);
$i=$i 1; //実際のバイト数は 1
$n としてカウントされます。 //ただし、全体の見た目を考慮して、大文字も上位 1 文字としてカウントします
}
else //それ以外の場合、小文字や半角句読点も含めて
{
$ returnstr=$returnstr.substr($sourcestr,$i,1);
$i=$ i 1; //実際のバイト数は 1
$n=$n 0.5; -width 句読点は高ビット文字の幅の半分です...
}
}
if ($str_length>$cutlength){
$returnstr = $returnstr "..."; //長さが
を超える場合は末尾に省略記号を追加します。
return $returnstr;