PHPのmb_strimwidth関数とは?文字列を指定した幅で切り詰める方法
PHPのmb_strimwidth()関数は、マルチバイト文字列を指定した幅で切り詰めるための関数です。日本語などのマルチバイト文字を含む文字列でも、文字化けを起こさずに安全にトリミングできるのが特徴です。ブログ記事の一覧表示や、長いテキストの抜粋(要約)を作成する際などによく使われます。
構文
string mb_strimwidth($str_string, $int_start, $int_width, $str_trim_marker, $str_encoding)
使用例は以下のとおりです。
mb_strimwidth($str_string: "PHP Tutorials", $int_start: 2, $int_width: 10, $str_trim_marker: "...",);
パラメータ
mb_strimwidth()関数は、文字列の幅を切り詰めるために5つのパラメータを受け取ります。
$str_string − 切り詰め対象となる元の文字列を指定します。
$int_start − 切り詰めを開始する位置を整数で指定します。文字列の先頭から数えた位置以降が対象になります。
$int_width − 切り詰め後の希望する幅を指定します。負の値を指定した場合は、文字列の末尾から数えた位置として扱われます。
$str_trim_marker − 文字列が切り詰められた場合に、末尾に追加される文字列(省略記号など)を指定します。省略可能です。
$str_encoding − 文字エンコーディングを指定します。省略またはNULLを指定した場合は、内部エンコーディングの設定値が使用されます。
戻り値
mb_strimwidth()は、切り詰められた文字列を返します。trim_markerを指定した場合は、指定した幅に収まるように末尾の文字が置き換えられます。
サンプルコード
<?php
// UTF-8エンコーディングを設定
mb_internal_encoding("UTF-8");
// 文字列を指定した幅で切り詰める
$str_string = mb_strimwidth("Simply Easy Learning!", 2, 15, "...");
// 結果を出力
echo "$str_string";
?>実行結果
上記のコードを実行すると、以下の出力が得られます。
mply Easy Le...
補足 − 上記のPHPコードでは、文字列の2番目の文字から12番目の文字までを切り詰めています。文字エンコーディングは内部エンコーディング(UTF-8)が使用されています。
-
PHPのstr_pad()関数とは?文字列のパディング方法をわかりやすく解説
PHPのstr_pad()関数は、文字列を指定した長さまで特定の文字で埋め(パディング)、新しい長さの文字列を返す関数です。文字列の左側・右側・両側に任意の文字を追加したい場合に便利です。 基本構文 str_pad(str, len, pad_str, pad_type) パラメータの詳細 str − パディング対象となる元の文字列を指定します。 len − パディング後の新しい文字列の長さを指定します。 pad_str − 埋め合わせに使用する文字列(パディング文字)を指定します。省略した場合は半角スペースが使用されます。 pad_type − 文字列のどちら側にパディングするかを指定しま
-
PHPのquoted_printable_encode()関数の使い方を徹底解説
PHPのquoted_printable_encode()関数は、8ビット文字列をquoted-printable形式の文字列に変換するための組み込み関数です。quoted-printableはMIME(Multipurpose Internet Mail Extensions)で定義されているエンコード方式の一つで、主に電子メールで非ASCII文字(日本語など)を安全に送信する際に利用されます。構文quoted_printable_encode(str)パラメータstr − 変換対象となる8ビット文字列を指定します。この引数は必須です。戻り値quoted_printable_encode()