phpで全角半角混じりの文字列を指定文字数で切り詰めたい。

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

twitterには全角,半角問わず140文字までしかポスト(投稿)できないという制限があります。

その為、twitterのAPIなどでBOTを作成する際、ポストする「つぶやき」(ツィート)を、この「全角半角を問わず140文字」という制限内に抑える(トリムする)必要があります。
そんな時には”mb_strlen関数”と”mb_substr関数”のマルチバイト関数を使って指定文字数に文字列を丸め(切り詰め)ます。

<?php
$sData = "あいうえおあいうえおあいうえお1234567890123456789012345678901234567890";
//全角・半角問わずバイト数でなく文字数を取得する。
$iCount = mb_strlen( $sData, "UTF-8" );
//全角・半角問わず140文字より多い場合、140文字に切り詰める
if( $iCount > 140 ){
$sResult = mb_substr( $sData, 0, 140, "UTF-8" );
}
?>

*参考:PHP: mb_strlen – Manual, PHP: mb_substr – Manual


スポンサーリンク
レクタングル(大)広告
レクタングル(大)広告

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存