ホームページ  >  記事  >  バックエンド開発  >  php、mysqlのエスケープ方法

php、mysqlのエスケープ方法

藏色散人
藏色散人オリジナル
2021-02-07 10:49:224494ブラウズ

php mysql エスケープ方法: 1. mysql ライブラリ関数「mysql_escape_string」または「mysqli_real_escape_string」を使用してエスケープします。構文は「mysql_escape_string($str)」または「mysqli_real_escape_string($str)」です。エスケープ 定義された関数「addslashes()」はエスケープされ、構文は「addslashes($str)」になります。

php、mysqlのエスケープ方法

#この記事の動作環境: Windows 7 システム、PHP8、Dell G3 コンピューター。

php は、文字列内の特殊文字をエスケープするために mysql データベースにアクセスします。

特殊文字をエスケープします: 一重引用符 (')、二重引用符 (")、バックスラッシュ (\)データベース クエリを容易にするための

方法 1: mysql ライブラリ関数を使用する

PHP バージョンは 7.0 より前です:

mysql_escape_string ( string $unescaped_string ) : string

PHP バージョンは 7.0 より前です:

mysqli_real_escape_string ( mysqli $link , string $escapestr ) : string

方法 2: エスケープ関数 addlashes() を使用する

適切なバージョン PHP4、PHP5、PHP7

addslashes ( string $str ) : string

PHP 5.4 より前のディレクティブ magic_quotes_gpc は次のとおりです。デフォルトでオンになります。実際、すべての GET、POST、および COOKIE データは addlashes() です。magic_quotes_gpc によってエスケープされた文字列には addlashes() を使用しないでください。二重レベルのエスケープが発生するためです。これが発生した場合は、次のように使用できます。 get_magic_quotes_gpc() 関数を使用してそれを検出します。つまり、get_magic_quotes_gpc() が false を返した場合、addslashes() を使用して特殊文字をエスケープします。例は次のとおりです:

function myaddslashes($data)
{
    if(false == get_magic_quotes_gpc())
    {
        return addslashes($data);//未启用魔术引用时,转义特殊字符
    }
    return $data;
}

推奨: "PHP ビデオ チュートリアル>>

以上がphp、mysqlのエスケープ方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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