関数・クラス解説
rtrim
version:PHP 4, PHP 5, PHP 7 (公式)文字列の最後から空白(あるいは指定の)文字を除去する
フォーマット
string : rtrim ( string $str [, string $character_mask ] )
パラメータ
string $str
入力文字列
string $character_mask
このパラメータを指定することにより、除去したい文字を指定することができます。●..●で範囲を指定することも可能(例:A..Z と記述)。
返値 string
処理実行後の文字列を返却
解説
入力された文字列 str の最後から空白文字 (あるいはその他の指定文字) を取り除き、返却します。
string $character_mask が指定されなかった場合は、以下の文字が削除対象となります
- " " (ASCII 32 (0x20)), 半角スペース
- "\t" (ASCII 9 (0x09)), タブ
- "\n" (ASCII 10 (0x0A)), 改行
- "\r" (ASCII 13 (0x0D)), 復帰
- "\0" (ASCII 0 (0x00)), NULL バイト
- "\x0B" (ASCII 11 (0x0B)), 垂直タブ
なお、この関数は文字列の後ろに対して処理を行いますが、文字列の前に対して同様の処理を行いたい場合、ltrimが利用できます。また前後両方に対して同様の処理を行いたい場合はtrim関数があります。
記述サンプル
//PHP 7.4.6で実行
//文字列を指定(先頭にはスペースとタブがある)
$str = "ABCDEFG " ;
//実行
echo rtrim($str);
//結果表示 スペースとタブが除去される
ABCDEFG
/* ----------------------------- */
//文字列を指定
$str = "ABCDEFG" ;
//除去する文字にEFGの3文字を指定して実行
echo rtrim($str, "EFG") ;
//結果表示
ABCD
/* ----------------------------- */
//文字列を指定
$str = "ABCDEFGHIJKLMN" ;
//除去する文字にB~Nを範囲指定して実行
echo rtrim($str, "B..N") ;
//結果表示 A~Mが除去される
A
/* ----------------------------- */
//マルチバイト文字列を指定
$str = "あいうえおかきくけこ" ;
//除去する文字に「くけこ」指定して実行
echo rtrim($str, "くけこ") ;
//結果表示 一見正常に処理されているように見える
あいうえおかき
/* ----------------------------- */
//ASCII 制御文字
$str = "abcdefg\x00\x01\x02\x03\x0B\x1C\x1D\x1E\x1F";
// ASCII 制御文字 (0 から 31 まで) を指定
$result = rtrim($str, "\x00..\x1F");
//結果表示
var_dump($result);
abcdefg
参考リンク
・ltrim 文字列の先頭にある空白(あるいは指定)文字を除去する・trim 文字列の先頭および末尾にあるホワイトスペースを取り除く
タグ
trim トリム String 文字列
公式リファレンス
書式
rtrim ( string $str [, string $character_mask ] ) : string
説明
この関数は文字列 str の最後から空白文字 (あるいはその他の文字) を取り除き、 取り除かれた文字列を返します。
2 番目のパラメータを指定しない場合、 rtrim() は以下の文字を削除します。
- " " (ASCII 32 (0x20)), 通常の空白。
- "\t" (ASCII 9 (0x09)), タブ。
- "\n" (ASCII 10 (0x0A)), 改行。
- "\r" (ASCII 13 (0x0D)), 復帰。
- "\0" (ASCII 0 (0x00)), NULL バイト。
- "\x0B" (ASCII 11 (0x0B)), 垂直タブ。
パラメータ
- str
- 入力文字列。
- character_mask
- character_mask パラメータにより、 削除する文字を指定することも可能です。 削除したい全ての文字をリストにしてください。.. を文字の範囲を指定する際に使用可能です。
返値
変更後の文字列を返します。
サンプル
例1 rtrim() の使用例
$text = "\t\tThese are a few words :) ... ";
$binary = "\x09Example string\x0A";
$hello = "Hello World";
var_dump($text, $binary, $hello);
print "\n";
$trimmed = rtrim($text);
var_dump($trimmed);
$trimmed = rtrim($text, " \t.");
var_dump($trimmed);
$trimmed = rtrim($hello, "Hdle");
var_dump($trimmed);
// ASCII 制御文字 (0 から 31 まで) を
// $binary の末尾から取り除きます
$clean = rtrim($binary, "\x00..\x1F");
var_dump($clean);
上の例の出力は以下となります。
string(32) " These are a few words :) ... "
string(16) " Example string
"
string(11) "Hello World"
string(30) " These are a few words :) ..."
string(26) " These are a few words :)"
string(9) "Hello Wor"
string(15) " Example string"
参考
ワード検索
※入力キーワードが、関数名・説明文・タグに含まれるものを検索関数名アルファベット別
最終更新一覧
●stristr
大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却
●stripslashes
バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く
●stripos
大文字小文字を区別せずに文字列が最初に現れる位置を取得する
●stripcslashes
addcslashes() でクォートされた文字列をアンクォートする
●strip_tags
文字列から HTML と PHP のタグを除去して返却
●strcspn
指定した文字が最初に現れる位置を調べる
●strcoll
ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する
●strcmp
2つの文字列を比較し同じか(あるいは大小)を判定する
●strchr
strstr() のエイリアス
●strcasecmp
2つの文字列を比較(大文字小文字を区別せず同じとみなす)
カテゴリー一覧
PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール