ホームページ  >  記事  >  バックエンド開発  >  PHPでaddslashes関数を使用するときにエラーを報告する問題

PHPでaddslashes関数を使用するときにエラーを報告する問題

WBOY
WBOYオリジナル
2016-07-25 09:05:43832ブラウズ
  1. echo function_exists('addcslashes');//関数が存在するかどうかを検出します
  2. echo get_magic_quotes_gpc().'
    ';//自動エスケープがオンになっているかどうかを検出します
  3. echo PHP_VERSION.'
    ';//php バージョン情報
  4. echo addcslashes("ジョン アダムスとは?");
  5. echo '
    ';
  6. $str = "ジョン アダムスとは?" ;
  7. echoaddslashes($str);
  8. ?>
コードをコピー

出力結果は同じですか? 10 5.3.6 警告: addcslashes() は正確に 2 つのパラメータを想定しており、1 つは /data/bookuu/test/class.php の 50 行目で指定されています。 ジョン・アダムスとは? 1 つはエラーを報告し、もう 1 つは正常に出力します。なぜ? addslashes と addcslashes は同じ関数ではなく、違いは 1 文字だけであることがわかりました。 ただし、両方の関数は同じこと、つまり文字列をエスケープします。 違いは何ですか? addslashes にはパラメータが 1 つだけあります - 文字列 addcslashes には、文字列と区切り文字の 2 つのパラメータが必要です。 echo addcslashes("Who’s John Adams?","’"); このように書くと正常な出力になります。

これが誰もが addslashes の使用法を理解するのに役立つことを願っています。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。