PHPマジッククオートの詳しい解説_PHPチュートリアル
PHP のセキュリティは、デフォルト設定 php.ini-dist に「マジック クォート」と呼ばれる magic_quotes_gpc = On が含まれているという事実にあります。これは、PHP 初心者にとって非常に便利ですが、マジック クォートがオンになっている場合でも SQL インジェクションが発生する可能性があります。可能ですが、少なくともシステムのリスクは大幅に軽減されます。」 (PHP マニュアル)。ただし、これは PHP コードの移植性に影響を及ぼし、マジック クオートでエスケープされたすべてのデータをデータベースに書き込む必要はないため、プログラムの実行効率に影響を与えるため、addslashes() を使用することをお勧めします。したがって、
magic_quotes_gpc = php.ini でオフにすることをお勧めします。
ここでは、magic_quotes_gpc がオンになっているかどうかを関数で判定し、addslashes() が必要かどうかを判定しています。 もちろん、これは効率に影響する可能性があります。
PHP システム設定ファイル php.ini には 3 つのマジック クオート設定オプションがあります:
マジッククオート設定オプション | 説明 | ランタイムの変更点 | PHPのデフォルト値 |
magic_quotes_gpc | オンにすると影響します HTTP リクエスト データ (GET、POST、COOKIE) に変換します。 | いいえ | オン |
magic_quotes_runtime | 開いた場合、ほとんどの データベースやテキスト ファイルなどの外部ソースからデータを取得して返す関数の場合、返されるデータはバックスラッシュでエスケープされます。 (magic_quotes_gpc = On の場合) | はい | オフ |
magic_quotes_sybase | 閉じるとすべて
(一重引用符)、" (二重引用符)、(バックスラッシュ)、および NULL 文字はバックスラッシュで自動的にエスケープされます。これは、addslashes() とまったく同じ効果があります。 オンの場合、一重引用符はバックスラッシュの代わりに一重引用符を使用してエスケープされます。このオプションは完全にオーバーライドします magic_quotes_gpc。両方のオプションをオンにすると、一重引用符がエスケープされます。二重引用符、バックスラッシュ、および NULL 文字はエスケープされません。 (magic_quotes_gpc = On の場合) |
はい | オフ |
しかし、外部から送信されるグローバル変数を扱うのはさらに面倒です。次のコードはここでブロックされ、MySql データベースへの送信には引用符などの前にバックスラッシュ () が付けられるだけです。
functionquotesOuterVars($var) {
if(is_array($var)) {
returnarray_map(quotesOuterVars,$var);
}else{
if(get_magic_quotes_gpc()) {
// if magic_quotes_sybase=Onまずこれを次のように置き換えてから、ラッシュを追加します if(ini_get(magic_quotes_sybase)) {
{
,,,,,、
http://www.bkjia.com/PHPjc/486162.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/486162.html
技術記事
PHP のセキュリティは、デフォルト設定 php.ini-dist に「Magic Quote」と呼ばれる magic_quotes_gpc = On が含まれているという事実にあります。これは、PHP 初心者にとって非常に便利です。「ただし、SQL インジェクションは...

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
