この記事では、PHP のstripslashes() 関数とaddslashes() 関数について紹介します。
1.tripslashes()—バックスラッシュの削除
定義と使用法
stripslashes() 関数は、addslashes() によって追加されたバックスラッシュを削除します。関数バックスラッシュ。
ヒント: この関数は、データベースまたは HTML フォームから取得したデータをクリーンアップするために使用できます。 #
<?php
echo stripslashes("Who\'s Bill Gates?");
ログイン後にコピー
2.addslashes()—各二重引用符 (") の前にバックスラッシュを追加します。
定義と使用法
addslashes () 関数は、事前定義された文字の前にバックスラッシュが追加された文字列を返します。
事前定義された文字は次のとおりです:
一重引用符 (')
二重引用符 ( ")
バックスラッシュ (\)
NULL
ヒント: この関数は、データベースに格納されている文字列およびデータベース クエリ ステートメント文字列の文字を準備するために使用できます。
注: デフォルトでは、PHP はすべての GET、POST、および COOKIE データに対して addslashes() を自動的に実行します。したがって、すでにエスケープされた文字列に対して addslashes() を使用しないでください。二重エスケープが発生するためです。この状況が発生した場合は、関数 get_magic_quotes_gpc() を使用して検出できます。
<?php
$str = addslashes('Shanghai is the "biggest" city in China.');
echo($str);
ログイン後にコピー
3. 注意事項
1. magic_quotes_gpc = on の場合、システムは一重引用符などの問題を自動的に処理します。addslashes( を使用する必要がありますか? ) またはtripslashes? () は問題ではありませんが、データを追加するときにaddslashes() が使用される場合、データを表示するときにstripslashes()
2が必要です。magic_quotes_gpc = offの場合、システムは次のような問題を処理しません。データを表示する場合は、insert Addslashes() を使用する必要がありますが、stripslashes() は必要ありません。
分析が完了したので、プログラムを実行するときに何をすべきでしょうか?上記の 2 つの状況によれば、次の結果が得られます:
magic_quotes_gpc がオンかオフかに関係なく、データを追加するときは addslashes() を使用します。オンの場合は、stripslashes() を使用する必要があり、オフの場合は、stripslashes を使用します。 ()は使用できません。
オンかオフを判断するにはどうすればよいですか? get_magic_quotes_gpc() を使用します。
PHP 関連の知識の詳細については、
PHP 中国語 Web サイト をご覧ください。
以上がPHPのstripslashes()関数とaddslashes()関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。