PHP開発では、特に長いテキストを表示する場合、文字列を傍受する必要があることがよくあります。簡潔なユーザーインターフェイスを確保するために、通常、テキストの最後に楕円が追加されます。 PHPのsubstr()関数は、文字列を傍受するシンプルで効率的な方法を提供し、mb_strlen()とmb_substr()関数を組み合わせて漢字を正確に処理することができます。この記事では、例を使用して、これらの関数を使用して文字列を傍受して楕円を追加する方法を示します。
ここに、カスタム関数で文字列を傍受し、最後に楕円を追加する方法を示すPHPの例があります。
<?php
function truncateString($string, $length) {
if (mb_strlen($string, 'utf-8') > $length) {
$string = mb_substr($string, 0, $length, 'utf-8');
$string .= '...';
}
return $string;
}
// テストの例
$text = "使用PHPのsubstr()函数截取字符串の一部分并在末尾添加省略号";
$truncatedText = truncateString($text, 10);
echo $truncatedText;
?>
上記のコードでは、truncatestring()という名前の関数が最初に定義されています。これは2つのパラメーターを受け入れます。1つは傍受する文字列で、もう1つはインターセプトされる長さです。 MB_STRLEN()を使用して、文字列の長さの正確な計算、特に漢字のサポートを確保しました。文字列の長さが指定されたインターセプトの長さを超えると、MB_SUBSTR()は文字列の一部をインターセプトし、最後に楕円を追加します。
この例では、元の文字列は「phpのsubstr()関数を使用して文字列の一部をインターセプトし、最後にerlypsisを追加する」です。10文字に傍受し、結果は「PHP ...を使用して」です。これは、元の文字列の過剰が楕円によって正常に切り捨てられ、識別されることを示しています。
この例では、普通のstrlen()とsubstr()の代わりにmb_strlen()およびmb_substr()を使用します。これは、漢字を扱う場合、MB_関数が文字の長さをより正確に計算し、異なる文字セットによる不正確な傍受の問題を回避できるためです。
文字列インターセプトのためにPHPのsubst()関数を使用し、最後に楕円を追加することは、多くのWeb開発において一般的な要件です。 MB_STRLEN()およびMB_SUBSTR()を使用することにより、英語と漢字の両方が正しく処理できるようにすることができます。開発中に同様の要件がある場合は、この機能をすばやく実装するために、この記事のサンプルコードを参照することもできます。