【PHP8.x】FILTER_SANITIZE_ADD_SLASHES定数の使い方
FILTER_SANITIZE_ADD_SLASHES定数の使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
FILTER_SANITIZE_ADD_SLASHES定数は、PHPの入力値フィルタリング機能において、特定の特殊文字をエスケープ処理するためのフィルターIDを表す定数です。この定数は、主にユーザーからの入力データや外部からのデータを受け取る際に、それらのデータに含まれる特殊文字が誤ってプログラムに解釈されることを防ぎ、スクリプトの安全性を高める目的で使用されます。
具体的には、シングルクォート(')、ダブルクォート(")、バックスラッシュ(\)、そしてNULL文字(\0)の前にバックスラッシュを追加する処理を行います。例えば、「What's up?」という文字列に対してこのフィルターを適用すると、「What's up?」のように変換されます。これにより、データベースへのSQLクエリなど、特定の文脈でこれらの特殊文字が意図しない動作を引き起こすことを防止します。
この定数は、filter_var()関数やfilter_input()関数といったPHPのフィルタリング関数に引数として渡すことで利用します。これらの関数にFILTER_SANITIZE_ADD_SLASHESを指定することで、入力された値に対して自動的にこのエスケープ処理が適用され、安全なデータとして扱えるようになります。データの整合性を保ち、セキュリティ上の脆弱性を低減するために重要な役割を果たす定数です。
構文(syntax)
1$originalString = "It's a string with \"quotes\"."; 2$sanitizedString = filter_var($originalString, FILTER_SANITIZE_ADD_SLASHES);
引数(parameters)
引数なし
引数はありません
戻り値(return)
戻り値なし
戻り値はありません