PHPでのtrimの使い方とは?文字列右側を除去するrtrimや文字列左側を除去するltrimのについても紹介
 
          
- システム
 エンジニア
- 取得した文字列から、不要な空白や文字を取り除く方法にはどんな関数がありますか?
- プロジェクト
 マネージャー
- では、trim関数について、実際のコードを見ながら理解を深めていきましょう。
PHPでのtrimの使い方とは?

            今回は、PHPでのtrimの使い方について説明します。trimを使用すると、文字列前後のスペースや指定文字を除去できます。また、rtrimやltrimの使い方についても紹介します。
PHPでのtrimの使い方に興味のある方はぜひご覧ください。
            
文字列前後のスペースを除去するtrim
文字列前後のスペースを除去するtrimについて紹介します。
            実際のソースコードを見てみましょう。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         
                          16
                         
                          17
                         
                          18
                         | 
                          $str1 = "    文字列    ";
                         
                          $str2 = "\t\t文字列\t\t";
                         
                          $str3 = "\r\n文字列\r\n";
                         
                          // trim前の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          // 文字列前後の空白を除去
                         
                          $str1 = trim($str1);
                         
                          $str2 = trim($str2);
                         
                          $str3 = trim($str3);
                         
                          // trim後の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         | 
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         | 
                          str1 [    文字列    ]
                         
                          str2 [                文字列                ]
                         
                          str3 [
                         
                          文字列
                         
                          ]
                         
                          str1 [文字列]
                         
                          str2 [文字列]
                         
                          str3 [文字列]
                         | 
指定文字の除去
trimでは、指定文字を除去することもできます。
            実際のソースコードを見てみましょう。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         
                          16
                         
                          17
                         
                          18
                         | 
                          $str1 = "aaa文字列aaa";
                         
                          $str2 = "\"\"\"文字列\"\"\"";
                         
                          $str3 = "'''文字列'''";
                         
                          // trim前の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          // 文字列前後の指定文字を除去
                         
                          $str1 = trim($str1, "a");
                         
                          $str2 = trim($str2, "\"");
                         
                          $str3 = trim($str3, "'");
                         
                          // trim後の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         | 
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         | 
                          str1 [aaa文字列aaa]
                         
                          str2 ["""文字列"""]
                         
                          str3 ['''文字列''']
                         
                          str1 [文字列]
                         
                          str2 [文字列]
                         
                          str3 [文字列]
                         | 
文字列右側のスペースを除去するrtrim
文字列右側のスペースを除去するrtrimについて紹介します。
            実際のソースコードを見てみましょう。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         
                          16
                         
                          17
                         
                          18
                         
                          19
                         
                          20
                         
                          21
                         
                          22
                         
                          23
                         
                          24
                         
                          25
                         
                          26
                         
                          27
                         
                          28
                         
                          29
                         
                          30
                         | 
                          $str1 = "    文字列    ";
                         
                          $str2 = "\t\t文字列\t\t";
                         
                          $str3 = "\r\n文字列\r\n";
                         
                          $str4 = "aaa文字列aaa";
                         
                          $str5 = "\"\"\"文字列\"\"\"";
                         
                          $str6 = "'''文字列'''";
                         
                          // trim前の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          echo "str4 [" . $str4 . "]\n";
                         
                          echo "str5 [" . $str5 . "]\n";
                         
                          echo "str6 [" . $str6 . "]\n";
                         
                          // 文字列右側の空白を除去
                         
                          $str1 = rtrim($str1);
                         
                          $str2 = rtrim($str2);
                         
                          $str3 = rtrim($str3);
                         
                          $str4 = rtrim($str4, "a");
                         
                          $str5 = rtrim($str5, "\"");
                         
                          $str6 = rtrim($str6, "'");
                         
                          // trim後の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          echo "str4 [" . $str4 . "]\n";
                         
                          echo "str5 [" . $str5 . "]\n";
                         
                          echo "str6 [" . $str6 . "]\n";
                         | 
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         | 
                          str1 [    文字列    ]
                         
                          str2 [                文字列                ]
                         
                          str3 [
                         
                          文字列
                         
                          ]
                         
                          str4 [aaa文字列aaa]
                         
                          str5 ["""文字列"""]
                         
                          str6 ['''文字列''']
                         
                          str1 [    文字列]
                         
                          str2 [                文字列]
                         
                          str3 [
                         
                          文字列]
                         
                          str4 [aaa文字列]
                         
                          str5 ["""文字列]
                         
                          str6 ['''文字列]
                         | 
文字列左側のスペースを除去するltrim
文字列左側のスペースを除去するltrimについて紹介します。
            実際のソースコードを見てみましょう。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         
                          16
                         
                          17
                         
                          18
                         
                          19
                         
                          20
                         
                          21
                         
                          22
                         
                          23
                         
                          24
                         
                          25
                         
                          26
                         
                          27
                         
                          28
                         
                          29
                         
                          30
                         | 
                          $str1 = "    文字列    ";
                         
                          $str2 = "\t\t文字列\t\t";
                         
                          $str3 = "\r\n文字列\r\n";
                         
                          $str4 = "aaa文字列aaa";
                         
                          $str5 = "\"\"\"文字列\"\"\"";
                         
                          $str6 = "'''文字列'''";
                         
                          // trim前の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          echo "str4 [" . $str4 . "]\n";
                         
                          echo "str5 [" . $str5 . "]\n";
                         
                          echo "str6 [" . $str6 . "]\n";
                         
                          // 文字列左側の空白を除去
                         
                          $str1 = ltrim($str1);
                         
                          $str2 = ltrim($str2);
                         
                          $str3 = ltrim($str3);
                         
                          $str4 = ltrim($str4, "a");
                         
                          $str5 = ltrim($str5, "\"");
                         
                          $str6 = ltrim($str6, "'");
                         
                          // trim後の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          echo "str4 [" . $str4 . "]\n";
                         
                          echo "str5 [" . $str5 . "]\n";
                         
                          echo "str6 [" . $str6 . "]\n";
                         | 
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         | 
                          str1 [    文字列    ]
                         
                          str2 [                文字列                ]
                         
                          str3 [
                         
                          文字列
                         
                          ]
                         
                          str4 [aaa文字列aaa]
                         
                          str5 ["""文字列"""]
                         
                          str6 ['''文字列''']
                         
                          str1 [文字列    ]
                         
                          str2 [文字列                ]
                         
                          str3 [文字列
                         
                          ]
                         
                          str4 [文字列aaa]
                         
                          str5 [文字列"""]
                         
                          str6 [文字列''']
                         | 
複数指定
除去する文字は複数指定することもできます。
            実際のソースコードを見てみましょう。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         
                          16
                         
                          17
                         
                          18
                         
                          19
                         
                          20
                         
                          21
                         | 
                          $str1 = "    文字列    ";
                         
                          $str2 = "\t\t文字列\t\t";
                         
                          $str3 = "\r\n文字列\r\n";
                         
                          // trim前の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          // trim対象の文字セット
                         
                          $trim_str = " \t\r\n";
                         
                          // 文字列前後の空白を除去
                         
                          $str1 = trim($str1, $trim_str);
                         
                          $str2 = trim($str2, $trim_str);
                         
                          $str3 = trim($str3, $trim_str);
                         
                          // trim後の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         | 
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         | 
                          str1 [    文字列    ]
                         
                          str2 [                文字列                ]
                         
                          str3 [
                         
                          文字列
                         
                          ]
                         
                          str1 [文字列]
                         
                          str2 [文字列]
                         
                          str3 [文字列]
                         | 
PHPでは、範囲オブジェクトでtrimすることもできます。実際のソースコードを見てみましょう。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         
                          7
                         
                          8
                         
                          9
                         
                          10
                         
                          11
                         
                          12
                         
                          13
                         
                          14
                         
                          15
                         
                          16
                         
                          17
                         
                          18
                         
                          19
                         
                          20
                         
                          21
                         | 
                          $str1 = "abcd文字列efgh";
                         
                          $str2 = "ijkl文字列mnop";
                         
                          $str3 = "qrst文字列uvwx";
                         
                          // trim前の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         
                          // trim対象の文字セット
                         
                          $trim_str = "a..z";
                         
                          // 文字列前後の空白を除去
                         
                          $str1 = trim($str1, $trim_str);
                         
                          $str2 = trim($str2, $trim_str);
                         
                          $str3 = trim($str3, $trim_str);
                         
                          // trim後の文字列出力
                         
                          echo "str1 [" . $str1 . "]\n";
                         
                          echo "str2 [" . $str2 . "]\n";
                         
                          echo "str3 [" . $str3 . "]\n";
                         | 
実行結果は以下のようになります。
| 
                          1
                         
                          2
                         
                          3
                         
                          4
                         
                          5
                         
                          6
                         | 
                          str1 [abcd文字列efgh]
                         
                          str2 [ijkl文字列mnop]
                         
                          str3 [qrst文字列uvwx]
                         
                          str1 [文字列]
                         
                          str2 [文字列]
                         
                          str3 [文字列]
                         | 
このようにPHPのtrimでは、除去対象の文字を複数指定できます。
- システム
 エンジニア
- 実際の開発の現場でも、利用頻度が多そうな関数ですね。
- プロジェクト
 マネージャー
- そうです。この他にもtrim関数と組み合わせて、空白やスペースを取り除く関数が存在するので、しっかりマスターしてください。
まとめ
いかがでしたでしょうか。PHPでのtrimの使い方について説明しました。trimを使用すると、文字列前後のスペースや指定文字を除去できます。また、rtrimやltrimの使い方についても紹介しました。
ぜひご自身でPHPのソースコードを書いて、理解を深めてください。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
          
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
          数多くのエンジニアが集まります。

- 
              スマホアプリから業務系システムまで スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。 
- 
              充実した研修制度 毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。 
- 
              資格取得を応援 スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。 
- 
              東証プライム上場企業グループ オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。 安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。 
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
              まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。


新着案件New Job
- 
              
              開発エンジニア/東京都品川区/【WEB面談可】/在宅ワーク月給29万~30万円東京都品川区(大崎駅)
- 
              
              遠隔テストサービス機能改修/JavaScript/東京都港区/【WEB面談可】/テレワーク月給45万~60万円東京都港区(六本木駅)
- 
              
              病院内システムの不具合対応、保守/東京都豊島区/【WEB面談可】/テレワーク月給30万~30万円東京都豊島区(池袋駅)
- 
              
              開発/JavaScript/東京都豊島区/【WEB面談可】/テレワーク月給50万~50万円東京都豊島区(大塚駅)
- 
              
              債権債務システム追加開発/東京都文京区/【WEB面談可】/在宅勤務月給62万~67万円東京都文京区(後楽園駅)
- 
              
              PMO/東京都豊島区/【WEB面談可】/在宅勤務月給55万~55万円東京都豊島区(池袋駅)





