MENU

テキストやURLをエスケープしたい

エスケープって大事。プログラムでは文字列を「”」または「’」で囲いますが、文章の中にも「”」「’」があったりすると・・・

「I’m sorry」

「’」で囲うと・・・

「’I’m sorry’」

となります。プログラムは前の方から順番に文字を見ていくので、1文字目の「’」と3文字目の「’」で囲まれた「I」として認識します。そして、4文字目のm以降は正しく認識されなくなってしまいます。

なので、文字列内の「’」を無効化(プログラム的な意味を持たないようにする)してあげる必要があるんですね。

この場合はエラーが返ってくるだけだと思うのですが、こういうのを利用してサイトのデータを表示させたり、取得できるようすることも出来ちゃいます。

そんなことになると大変なのでエスケープ処理が必要なのです。

WordPressのエスケープ用の関数がいくつかあるので載せておきます。

・文字列をエスケープしたい

esc_html($text);

・htmlタグの属性をエスケープしたい

esc_attr($attr);

・URLをエスケープしたい

esc_url($url)

他にもエスケープ用の関数はあるんですが、よく使うのはこの辺。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次