CodeIgniterのXSS Filterはいろんな文字が削除されたり、入力の時点でフィルタリングされるので、あまり好きではありません。
今回は他のフレームワークでよくあるような、表示する変数にデフォルトでエスケープするような処理を書いてみました。
広告
動作検証はv2.0.2で行っています。実際に利用する場合は、下記のファイルを適当な場所にコピーしてもらい、escape_helperをロードしてください。また、application/config/config.phpに下記を追加してください。
$config['display_vars_default_escape'] = TRUE; |
エスケープ前のデータが欲しい場合は「r」メソッドを使ってデコードするようにしました。
MY_Loader.php
64行目付近がその処理になります。