PHP関数「mb_strimwidth()」で文字列を丸める方法
PHPには、文字列を丸めるための関数がいくつか用意されています。
その一つがmb_strimwidth()関数です。
mb_strimwidth()を使用することで、指定した文字数を切り出し、「…」など特定の文字を末尾に付与することができます。
使い方は、
mb_strimwidth(切り出し対象となる文字列, 切り出し開始位置, 切り出す文字数, 末尾に付ける文字列, 文字コード);
となります。
例えば、「ABCDEFGHIJKLMNO」という文字列の頭から10文字切り出して、「…」を末尾に付けたい場合、以下のようにするだけです。
$text = “ABCDEFGHIJKLMNO”;
$return = mb_strimwidth($text, 0, 10, “…”, “UTF-8”);
$returnを出力すると、「ABCDEFG…」が表示されるはずです。
ここで「ABCDEFG」だと7文字じゃないですか?
ってなると思いますが、
これは末尾にくっ付けた「…」も指定した切り出し文字数に含まれるためです。
なので、末尾の文字数も含めた上で何文字切りだすかを指定する必要があります。
因みに、全角文字は1文字で2文字分となります。
その為、
$text = “あいうえおかきくけこ”;
から10文字切りだすと
「あいうえお」が表示されます。