

CakePHPのSanitizeが廃止になるそうなので、代わりにネイティブPHPで使えるライブラリを探しています。

今までCakePHPしか触ったことがないので、何が定番で信用できるのかわからないので教えて下さい。


CC BY-SA 3.0
2015-02-03T04:02:44.210
5823
2015-02-03T14:05:53.677
7339
question
php
CakePHPのサニタイズの代わりに使えるおすすめのライブラリは?


`Sanitize::html()`の代わりに、PHP標準の`htmlspecialchars()`が使えます。タグの除去であれば、`stripTags()`という同名の関数がこれもPHP標準で存在します。

`escape()`ですが、もし使っていたとしたら、それはSQLを文字列で組み立てているか、さもなくばエスケープが不要な場面で誤って不必要なエスケープをしているということです。滅多なことでは`escape()`が必要になる場面はありません。それを理解して使っているのでない限り、使い方が間違っています。

どう間違っているかわからない、または、Sanitizeの別の関数`clean()`を使っていたら、なぜエスケープが必要なのか、というところをおさらいされた方が良いでしょう。「体系的に学ぶ安全なWebアプリケーションの作り方」という本を紹介しますので、通読されることをおすすめします。

残りの関数は簡単な文字列置換なので、必要なら自力で実装できるでしょう。


CC BY-SA 3.0
2015-02-03T14:05:53.677
5882
2015-02-03T14:05:53.677
5793
5823
answer