mb_strimwidth

指定した幅で文字列を丸める

説明

string mb_strimwidth(
    string $string,
    int $start,
    int $width,
    string $trim_marker = "",
    stringnull $encoding = null
)

文字列 string を指定した幅 width で丸めます。 半角文字は 1 として、 全角文字は 2 として数えます。 東アジアの文字の長さに関する詳細は » http://www.unicode.org/reports/tr11/ を参照ください。

パラメータ

string

丸めたい文字列。

start

開始位置のオフセット。文字列の始めからの文字数 (最初の文字は 0) です。 負のオフセットは、文字列の末尾からのオフセットと解釈されます。

width

丸める幅。 負の値を指定すると、文字列の末尾からの幅を数えます。

注意:

負の値を指定することは、PHP 8.3.0 以降では推奨されなくなっています。

trim_marker

丸めた後にその文字列の最後に追加される文字列。

encoding

encoding パラメータには文字エンコーディングを指定します。省略した場合、もしくは null の場合は、 内部文字エンコーディングを使用します。

戻り値

丸められた文字列を返します。 trim_marker が設定された場合、 width にマッチする最後の文字を trim_marker で置き換えます。

変更履歴

バージョン 説明
8.3.0 mb_strimwidth に負の width を渡すことは、推奨されなくなりました。
8.0.0 encoding は、nullable になりました。
7.1.0 負の startwidth をサポートするようになりました。

例1 mb_strimwidth の例

<?php
echo mb_strimwidth("Hello World", 0, 10, "...");
// "Hello W..." と出力します
?>

参考

  • mb_strwidth
  • mb_internal_encoding