広告スペース(バナー)
🐘PHP レッスン
基本文法の基礎8
データ構造とオブジェクト指向7
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 39 / 68

文字列の正規化(trim・大文字小文字の統一)

このレッスンでは、文字列の正規化(trim・大文字小文字の統一)を学び、ユーザー入力を安全に比較できるようになることを目標にします。「PHP trim 使い方」で調べている方向けの内容です。

ユーザーが入力した文字列には、前後の余分な空白や、大文字・小文字の表記ゆれが含まれがちです。trim()で空白を取り除き、strtolower()で比較しやすい形に統一することを正規化と呼びます。

サンプルコードでは、normalizeという関数でstrtolower(trim($str))という形で、前後の空白除去と小文字化を1つの処理にまとめています。" Hello World ""hello world"という見た目の違う2つの文字列も、正規化してから比較すると同じ文字列として扱えることを確認できます。

初心者がよくつまずくのが、正規化を一部の処理にしか適用せず、比較対象の片方だけ正規化を忘れてしまうケースです。文字列を比較する処理を書くときは、両方の文字列に必ず同じ正規化を適用することを意識しましょう。

この処理をせずに文字列を比較すると、人間には同じに見えてもfalseと判定されてしまうことがあります。入力チェックやログイン処理などで欠かせない、実務でも頻出の基本テクニックです。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではPHPを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
表記のゆれを吸収して、ユーザー入力を正しく比較できるようになります。
広告スペース(バナー)
広告スペース(記事内)