コードをコピー コードは次のとおりです。
$lenth = 19; 「長いニュースのタイトルを最初の数単語だけを表示して...に置き換える方法?」
echo strlen($str)<=$lenth ? "; lenth).chr(0)."....");
?>
/*
@ 別の方法、ord() 関数を使用します:@ gb2312 エンコーディングに適用:
*/
$str = "長いニュースタイトルの最初の数単語だけを表示して...に置き換える方法は?";
function gb2312_substr($str, $limit) {
$restr = ''; 🎜>for($i=0;$i$restr .= ord($str[$i])>127 ? $str[$i ].$str ? [ $i] : $str[$i];
}
return $restr;
/*
@ 以下は utf-8 エンコードにのみ適用されます。 /
function utf8_substr($str, $limit) {
$restr = '';
for($i=0;$i< $limit-3;$i ) {
$restr .= ord($str[$i])>127 ? $str[$i].$str[ $i].$str[ $i] : $str[$i]; return $restr;
}
//上記の最初の説明: chr(0) は null ではなく、null は何も意味せず、chr(0) の値は 0 です。 16進数で表すと0x00、2進数で表すと00000000となります。chr(0)では何も表示されませんが、文字です。 chr(0)は何も表示されませんが、文字です。漢字が切り捨てられると、エンコード規則に従って、常に他の文字を漢字として後ろに引っ張って解釈する必要があるため、文字化けが発生します。
?>