trim
(PHP 4, PHP 5, PHP 7)
trim — 文字列の先頭および末尾にあるホワイトスペースを取り除く
説明
trim
( string $string
[, string $characters
= " \n\r\t\v\0"
] ) : string
この関数は string
の最初および最後から空白文字を取り除き、
取り除かれた文字列を返します。2番目のパラメータを指定しない場合、
trim()は以下の文字を削除します。
- " " (ASCII
32
(0x20
)), 通常の空白。 - "\t" (ASCII
9
(0x09
)), タブ。 - "\n" (ASCII
10
(0x0A
)), リターン。 - "\r" (ASCII
13
(0x0D
)), 改行。 - "\0" (ASCII
0
(0x00
)),NUL
バイト - "\v" (ASCII
11
(0x0B
)), 垂直タブ
パラメータ
string
- ホワイトスペースを取り除く string
characters
characters
パラメータにより、削除する 文字を指定することも可能です。削除したい全ての文字をリストに してください。..
を文字の範囲を指定する際に 使用可能です。
返り値
ホワイトスペースを取り除いた文字列
例
例1 trim()の使用例
<?php$text = "\t\tThese are a few words :) ... ";$binary = "\x09Example string\x0A";$hello = "Hello World";var_dump($text, $binary, $hello);print "\n";$trimmed = trim($text);var_dump($trimmed);$trimmed = trim($text, " \t.");var_dump($trimmed);$trimmed = trim($hello, "Hdle");var_dump($trimmed);$trimmed = trim($hello, 'HdWr');var_dump($trimmed);// ASCII 制御文字 (0 から 31 まで) を// $binary の先頭および末尾から取り除きます$clean = trim($binary, "\x00..\x1F");var_dump($clean);?>
上の例の出力は以下となります。
string(32) " These are a few words :) ... " string(16) " Example string " string(11) "Hello World" string(28) "These are a few words :) ..." string(24) "These are a few words :)" string(5) "o Wor" string(9) "ello Worl" string(14) "Example string"
例2 trim() を用いて配列の値をトリミングする
<?phpfunction trim_value(&$value){ $value = trim($value); }$fruit = array('apple','banana ', ' cranberry ');var_dump($fruit);array_walk($fruit, 'trim_value');var_dump($fruit);?>
上の例の出力は以下となります。
array(3) { [0]=> string(5) "apple" [1]=> string(7) "banana " [2]=> string(11) " cranberry " } array(3) { [0]=> string(5) "apple" [1]=> string(6) "banana" [2]=> string(9) "cranberry" }
注意
注意:
わかるかな?: 途中の文字が取り除かれる
trim() は string の先頭と末尾から文字を取り除くので、 文字列の途中にある文字がを取り除かれたり (あるいは取り除かれなかったり) すると少し戸惑うことでしょう。
trim('abc', 'bad')
は 'a' と 'b' を両方取り除きます。 なぜなら、まず 'a' を取り除いた時点で 'b' が先頭の文字となり、それも取り除く対象だからです。 したがって、この処理は正しく動きます。一方、trim('abc', 'b')
は動かないでしょう。
参考
- ltrim() - 文字列の最初から空白 (もしくはその他の文字) を取り除く
- rtrim() - 文字列の最後から空白 (もしくはその他の文字) を取り除く
- str_replace() - 検索文字列に一致したすべての文字列を置換する