この記事では、PHP プログラミングで特殊文字を定期的にフィルタリングする方法を紹介します。必要な方は参考にしてください。
正規表現を使用して PHP で特殊文字をフィルタリングするには、関数 preg_quote を使用できます。 string preg_quote( string $str[, string $delimiter] ) $str 文字列に表示され、正規表現に属する特殊文字を見つけて、特殊文字の前にバックスラッシュを追加します。 オプションの $delimiter 文字列パラメータは、エスケープ文字の新しいセットとして提供できます。 正規表現の特殊文字には、 . + * ? [ ^ ] $ ( ) { } = ! string addslashes( string $str )データベースに書き込まれる文字列の特殊文字にバックスラッシュを追加します。これらの文字には、一重引用符 (')、二重引用符 (")、バックスラッシュ ()、および NULL (NULL 文字) が含まれます。 php.ini コマンド magic_quote_gpc = On の場合、データベースにデータを書き込むときに、データ内の特殊文字がバックスラッシュとともに自動的に追加されることを意味します。 get_magic_quotes_gpc() 関数を使用すると、magic_quote_gpc がオンになっているかどうかを検出できます。 PHP 担当者は、magic_quote_gpc の値を Off に設定することを推奨しています。この設定をオンにすると、特定のセキュリティ上の問題が発生する可能性があるため、データベースに書き込まれるデータを手動で処理することが最善です。 string addcslashes( string $str, string $charlist ) C スタイルで文字列をエスケープします。 $charlist パラメーターは、エスケープする必要がある文字セットを関数に提供します。つまり、エスケープする文字を $charlist 文字列パラメーターに指定できます。 a と z の間のすべての英文字をエスケープする場合は、パラメータを a..z の形式で記述できます。この関数を使用する場合は、C 言語で定義されているエスケープ シーケンスに注意してください。 特殊文字をフィルタリングするためのPHPユーティリティ関数PHPフォーム送信時の特殊文字フィルタリング方法 html特殊文字フィルターPHPクラス URLリンク内の特殊文字をエスケープする方法 PHPの特殊文字エスケープの詳しい説明 phpフィルターパラメータの特殊文字のアンチインジェクション 不正な特殊な文字列をフィルタリングするためのphpメソッド PHPの特殊文字処理関数の例 |