指定した長さに文字列を丸める - mb_strimwidth()

以前も同じようなことをやったのだけれど、
たしかそのときは、substr()やらstr_replace()やら使って処理した気が。
Smartyにはプラグイン関数ありましたよね。


以前からあったのか知りませんでしたが、一発で解決するPHP関数があるそうな。

string mb_strimwidth ( string $str , int $start , int $width [, string $trimmarker [, string $encoding ]] )


str
丸めたい文字列。

start
開始位置のオフセット。文字列の始めからの文字数 (最初の文字は 0) です。

width
丸める幅。

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

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

PHP Manual

他にも調べれば色々出てきそう。