PHPの文字列エスケープ関数(addslashes、stripslashes)の詳しい解説_PHPチュートリアル

WBOY
リリース: 2016-07-13 10:31:21
オリジナル
1217 人が閲覧しました

PHP には、文字列のエスケープに関連する 2 つの関数があります。それは、addslashes とtripslashes です。

addslashes($string) は、指定された定義済み文字の前にバックスラッシュ () を追加します。これは、データベースおよびデータベース クエリ ステートメントに格納されている文字列に適切な文字列を準備するために使用されます。

注: デフォルトでは、PHP ディレクティブ magic_quotes_gpc がオンになっており、すべての GET、POST、COOKIE データに対して addslashes() が自動的に実行されます。 magic_quotes_gpc によってエスケープされた文字列に対して addslashes() を使用しないでください。二重エスケープが発生するためです。この状況が発生した場合は、関数 get_magic_quotes_gpc() を使用して検出できます。

stripslashes($string) は、addslashes() 関数によって追加されたバックスラッシュを削除してエスケープされた文字を復元するために使用され、主にアンチエスケープとも呼ばれます。データベースからのデータまたはフォームから取得したデータ。

次のように、どの文字がアッドスラッシュによってエスケープされるか:

一重引用符 (')
二重引用符 (")
バックスラッシュ ()
ヌル

さらに、区切り文字として一重引用符を含む文字列は、2 つのエスケープ文字をサポートします。

一重引用符 (')

バックスラッシュ ()

二重引用符で区切られた文字列は、次のエスケープをサポートします:

n 改行 (LF または ASCII 文字 0x0A (10))

r キャリッジリターン (CR または ASCII 文字 0x0D (13))
t 水平タブ文字 (HT または ASCII 文字 0x09 (9))
\ バックスラッシュ
$ドル記号
「二重引用符
」 [0-7]{1,3} この正規表現シーケンスは、8 進数表記で表される文字と一致します
x[0-9A-Fa-f]{1,2} この正規表現シーケンスは、16 進表記で表される文字と一致します

興味がありそうな記事

    php 文字列置換関数 str_replace 速度比 preg_replace は高速です
  • String PHP の関数 完全な概要
  • php パフォーマンスの最適化: isset() を使用して文字列の長さを決定するのは、strlen() よりも高速です
  • JavaScript の文字列エンコード関数、escape、encodeURI、encodeURI コンポーネントの比較と分析
  • 忘れ去られている強力な文字列処理関数のいくつかphpの
  • phpフィルター文字列関数
  • phpの最も正確な文字列長インターセプト関数
  • PHPは連続した数字(文字)配列関数を生成します range()分析、PHP宝くじプログラム関数

http://www.bkjia.com/PHPjc/764092.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/764092.html技術記事 PHP には、文字列のエスケープに関連する 2 つの関数があります。それは、addslashes とtripslashes です。 addslashes($string)、指定された定義済み文字の前にバックスラッシュ () を追加します。使用...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!