search
LoginSignup
0
Help us understand the problem. What are the problem?

posted at

updated at

Organization

PHP 一定文字列以上は…に省略するコード

概要

  • 一定文字数以上は文字列…のように文字列を変換するコードをメモ的に記載する。

コード

  • 下記のように記載することで$limitに入れた文字列をオーバーした場合に省略する事ができる。

    <?php
    
    $limit = 文字数制限;
    $str = '判定したい文字列';
    
    if (mb_strlen($str) >= $limit) {
        $str = mb_substr($str, 0, $limit) . '…';
    }
    
    echo $str;
    
  • 例えば下記のように記載すると「ありが…」と出力される。

    <?php
    
    $limit = 3;
    $str = 'ありがとう';
    
    if (mb_strlen($str) >= $limit) {
        $str = mb_substr($str, 0, $limit) . '…';
    }
    
    echo $str;
    

追記(2022/08/17)

  • @rana_kualu 様よりコメントいただき、もっと簡単に省略する方法をお教えいただきました。。!本当にありがとうございます!

  • 省略対象が確実に全角文字の場合非常にスマートに書けそうでした!

    echo mb_strimwidth('ありがとう', 0, 8, '…');
    
  • 記載例

    mb_strimwidth(末尾を丸める文字, 開始位置, 丸める幅半角文字なら1全角文字なら2でカウント, 丸めた後の文字列の最後に追加される文字列);
    

参考文献

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0
Help us understand the problem. What are the problem?