Skip to content

Instantly share code, notes, and snippets.

@violetyk
Last active December 17, 2015 18:39
Show Gist options
  • Save violetyk/5655227 to your computer and use it in GitHub Desktop.
Save violetyk/5655227 to your computer and use it in GitHub Desktop.
mb_strimwidth()で50文字でくぎりたい
<?php
$str = 'ぱふぱふぱふぱふぱ!ぱふぱふぱふぱふぱ!ぱふぱふぱふぱふぱ!ぱふぱふぱふぱふぱ!これで50文字文字!うほ';
echo $strwidth = mb_strwidth($str, 'utf-8');
echo "\n";
echo mb_strlen($str, 'utf-8');
echo "\n";
$trimmarker = ' ...';
echo $trimmarker_width = mb_strwidth($trimmarker, 'utf-8');
echo "\n";
echo mb_strlen($trimmarker, 'utf-8');
echo "\n";
echo mb_strimwidth($str, 0, 100 + $trimmarker, '', 'utf-8');
@honbin
Copy link

honbin commented May 28, 2013

http://qiita.com/items/e0c364e74b5e22a7bc0d これじゃだめなのー!!!????

@violetyk
Copy link
Author

violetyk commented Jun 7, 2013

うお!コメント通知見落としたのか気づかなかった...
ありがとうございます!CSSではなくてそもそも出力する文字数を制限しようかと思って!

これやってて気づいたんですけど、文字数できるならmb_substr()でオッケーですね!
mb_strwidth()は見た目の幅で切る関数でした。

参考:PHP の mb_strimwidth 関数で表示する文字列の長さを調節する - hoge256ブログ http://www.hoge256.net/2007/10/79.html

@honbin さん最近飲みに行ってないですし、飲みいきましょ!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment