string addedslashes (string str)
データベースクエリステートメントなどの特定の文字の前にバックスラッシュを追加した文字列を返します。
これらの文字は一重引用符 (')、二重引用符 (")、バックスラッシュ (\)、および NUL (NULL 文字) です。
スラッシュは逆の効果を持ちます。mysql や GET および POST データを処理する場合、多くの場合、変更が必要になります。データは引用符がエスケープされます。
PHP には、' (一重引用符)、" (二重引用符)、\ (バックスラッシュ) 文字、および NULL 文字を自動的にエスケープできる 3 つの設定があります。
PHP はこれをマジック クオートと呼びます。これら 3 つの設定は、HTTP リクエスト データ (GET、POST、COOKIE) に影響を与える magic_quotes_gpc です。実行時に変更することはできません。 PHP のデフォルト値は on です。
magic_quotes_runtime オンにすると、データベースやテキスト ファイルなどの外部ソースからデータを取得して返すほとんどの関数は、バックスラッシュでエスケープされたデータを返します。このオプションは実行時に変更でき、PHP のデフォルト値はオフです。
magic_quotes_sybase オンにすると、バックスラッシュの代わりに一重引用符を使用して一重引用符がエスケープされます。このオプションは、magic_quotes_gpc を完全にオーバーライドします。両方のオプションを同時にオンにすると、一重引用符は " にエスケープされます。二重引用符、バックスラッシュ、NULL 文字はエスケープされません。特殊記号は自動的にエスケープされると便利ですが、これによりプログラムの効率が低下し、プログラムが複雑になります。移植性が面倒です
サーバーのini設定がわからない場合は、get_magic_quotes_gpc()、get_magic_quotes_runtime()、またはini_get()を呼び出してステータスを検出する必要があります
。