rtrim-文字列関数

rtrim関数は文字列の末尾から空白(又は指定文字)を取り除き、取り除いた文字列を返す関数です。以下に使用例を示します。
//rtrim ("文字列", "削除指定文字");

$str = "PHP3-PHP4-PHP5-PHP6 ";
$str = rtrim ($str);
echo $str;

1番目の引数には取り除きたい文字を含んでいる文字列を指定し、2番目の引数に削除したい文字列を指定することが出来ます。 2番目の引数はオプションです。2番目の引数を指定しない場合は以下の文字が取り除かれます。

" " (ASCII 32 (0x20)) 通常の空白
"\t" (ASCII 9 (0x09)) タブ
"\n" (ASCII 10 (0x0A)) 改行
"\r" (ASCII 13 (0x0D)) 復帰
"\0" (ASCII 0 (0x00)) NUL バイト
"\x0B" (ASCII 11 (0x0B)) 垂直タブ

上記の例では文字列に変数strを指定しています。
以下に取り除き前と取り除き後の変数strの値を示します。
//取り除き前の$str
PHP3-PHP4-PHP5-PHP6 

//取り除き後の$str
PHP3-PHP4-PHP5-PHP6
上の例では変数strの文字列の末尾から空白文字が削除されています。

rtrimで取り除く文字を指定

2番目の引数に取り除きたい1文字または文字列を指定することも可能です。 文字列はシングルクオートまたはダブルクオートで囲んで記述します。 以下に例を示します。
$str = "PHP3-PHP4-PHP5-PHP6";
$str  = rtrim ($str, "6");
$str1 = rtrim ($str, "p6"); // ?

echo $str;  //PHP3-PHP4-PHP5-PHP
echo $str1; //PHP3-PHP4-PHP5-PHP ?
取り除きたい文字に"6"を指定しているので末尾から"6"を取り除いた文字列
 PHP3-PHP4-PHP5-PHP がブラウザに出力されます。
?は"p"は取り除かれることなく PHP3-PHP4-PHP5-PHP がブラウザに出力される。これはrtrimが大文字・小文字を区別するためです。

rtrimの動作確認

文字列の末尾から既定の文字列又は指定文字列をを取り除く関数ですが、その取り除く文字列が末尾から複数続いている場合はどうるのか。 以下に例を示します。
$str = "PHPPP";
$str  = ltrim ($str, "P");

echo $str;  //PH
上記の場合、取り除きたい文字列"P"が、変数strの値"PHPPP"を見ると末尾から取り除きたい文字"P"が3つ連続して記述されいます。 この場合、文字列の末尾が"P"でなくなるまでrtrimの取り除き操作が続きます。 したがって、ブラウザには PH が出力される事になります。