【1分理解】PHPの文字列をエスケープする方法

phpの文字列エスケープ
  • このエントリーをはてなブックマークに追加
  • Pocket

PHPを扱っていれば特殊な文字でエスケープが必要なシーンはどうしても出てくる。

このページではPHPの文字列エスケープについて見ていこう。

PHPでの文字列エスケープ

それでは簡単にPHPにおける文字列のエスケープについてみていこう。

エスケープの必要性

そもそもエスケープ処理とは、通常の記法では出力できないような文字をどうにかして出力させる処理のことをいう。

例えば、PHPにおいて文字列出力をする方法の1つに「’」で囲む記法があるが、その肝心の「’」を出力したい場合はどうすればよいだろうか。

まずは下記のコードを見ていただければと思う。

文字のエスケープ

この出力を「今日もA’は元気だ。」にしたい場合はどうすればよいだろうか?

単純にこんなコードを書いてしまわないだろうか

残念ながらこのPHPコードはコンパイルエラーになる。

「’」はそもそも文字列を囲む必要があるので、始まりと終わりで2つあればよい。だが、3つになってしまっているので、PHPで解釈できない。

ここで「’」を文字列として出力させたい時に使うのがエスケープ処理だ。

バックスラッシュ(もしくは¥)によるエスケープ

書き方は次のようになる。

「¥」もしくは「\」記号によって直後の文字をエスケープすることで、そのまま文字列として出力することができるようになる。

エスケープが必要な文字は何も、「‘」だけではない。改行やタブなど、普段出力を意識しないような文字にも利用される。

いくつかエスケープ例をあげよう。

PHPエスケープの実例

改行

実行結果は下記のようになる。

改行のエスケープシーケンスは「¥n」だ。

ちなみに、エスケープ文字によっては、ブラウザでは確認が難しいものがある。

この改行もそうなのだが、ブラウザを通して改行を表現するためには、HTMLタグである<br>を利用する必要がある。

だから、ここでは、純粋に素のPHPのサンプルとして上記の通り表すことにする。

エスケープ実例「タブ」

おなじみのタブも下記のようなコードで表すことができる。

タブのエスケープシーケンスは「¥t」だ。

エスケープシーケンスは他にもたくさんあるが、まずは上記を掴んでいただきつつ、必要なときに調べていただければと思う。

まとめ

このページではPHPの文字列エスケープについてお伝えをした。参考にしていただければ幸いだ。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*