ニュースのタイトル表示は、52バイト内に表示させたい


[![画像の説明をここに入力](https://i.stack.imgur.com/LIyKZ.jpg)](https://i.stack.imgur.com/LIyKZ.jpg)

[code]

    if(strlen($item->T03_PROMOTION_TITLE)>31) echo mb_substr( $item->T03_PROMOTION_TITLE, 0, 26,"UTF8"); else echo $item->T03_PROMOTION_TITLE;?></a></div>
                                        <div class="bs_font16 ellipsis"><a class="" href="<?php echo appSettings::strWebURL.'/newsdetail/index.php?P=0&ID='.$item->T03_PROMOTION_ID.'&CBR='.$item->T03_PROMOTION_CATEGORY.'#main'?>"><?php if(mb_strlen($item->T03_PROMOTION_CONTENT, '8bit')>160) echo mb_substr( $item->T03_PROMOTION_CONTENT, 0, 51,"UTF8").'...'; else echo $item->T03_PROMOTION_CONTENT;?>
    
[/code]

日本語場合、26文字を表示される。  
英語場合、52文字を表示される。  
日本語と英語を混じった文書は、どのようなコマンドを使用するでしょうか。  
教えていただけませんか。  
ありがとうございます。




2行分の文字を表示したいという場合は別のアプローチでの解決方法もあるかと思います。

# cssで2列の範囲外を見えなくする

単純にエリアに２も自分の領域のみ表示するようにしてそれ以降は見えなくしてしまう

[code]

    .area {
      height: 2em;
      overflow: hidden;
    }
    
[/code]

# 範囲外を3てんリーダーにする

ブラウザは限られてきそうですが、CSSで対応できるようです  
<https://tech.recruit-mp.co.jp/front-end/tips-ellipsis/>

文字列で数えるなどの場合いろいろ考えることが多くなるため  
cssでの対応のが簡単かなと思ったのでご提案です。

