PHP の mysql_* 関数を放棄する理由
長年にわたり、PHP の mysql_* 関数はいくつかの技術的な理由で信頼性が低くなり、に対する懸念
-
機能の廃止: mysql_* 関数を収容する MySQL 拡張機能は、現在は積極的に開発されていません。 PHP 5.5 で正式に非推奨となり、その後 PHP 7.0 で削除されたため、セキュリティ メンテナンスのないレガシー テクノロジとなっています。
-
最新機能の欠如: 他の PHP データベース拡張機能と比較して、mysql_* 関数には欠如しています。準備されたステートメント、ストアド プロシージャ、トランザクション、最新のパスワード認証方法などの重要な機能のサポート。これらの欠陥により、データベースの汎用性が制限され、高度なデータベース手法の導入が妨げられます。
-
エラーが発生しやすいパラメータ化: プリペアド ステートメントのサポートがなければ、外部データを手動でエスケープし、別の関数で引用する必要があります。 mysql_real_escape_string() のように呼び出します。このプロセスはエラーが発生しやすく、SQL インジェクションの脆弱性を引き起こす可能性があるため、セキュリティ上のリスクが生じます。
mysql_* 関数を使用すると、コードの将来の互換性が低下し、セキュリティ上の懸念が生じます。 PDO や mysqli などの代替データベース拡張機能への移行を検討してください。これらの拡張機能により、機能が向上し、エラーの影響を受けやすくなり、セキュリティが強化されます。
以上がPHP で mysql_* 関数の使用をやめるべきなのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。