尝试从 PHP 连接到 MySQL 服务器时,您可能会遇到一条错误消息,指出 mysql 扩展是已弃用。出现此错误的原因是官方在 PHP v5.5.0 中弃用了 ext/mysql PHP 扩展,并随后在 PHP v7 中删除了该扩展。
PHP 中引入了 mysql 扩展v2.0 自 2006 年以来基本保持不变。它缺乏对事务、存储过程和预准备语句等现代功能的支持,而这些功能已被证明对于解决安全问题至关重要
要解决此问题,请考虑迁移到两个替代 MySQL 扩展之一:MySQLi 或 PDO_MySQL。这两个扩展自 v5.0 起就成为 PHP 核心的一部分,并且比过时的 mysql 扩展具有显着的优势。
虽然可以通过修改 php.ini 来抑制弃用错误强烈建议不要排除 E_DEPRECATED。此方法不仅可以屏蔽即将删除的 mysql 扩展,还可以抑制所有其他 E_DEPRECATED 错误,这些错误可能会导致未来 PHP 版本中出现不可预见的问题。
新项目:避免在新项目中使用 ext/mysql 并选择 MySQLi 或 PDO_MySQL
旧代码库:在升级 PHP 之前执行彻底的回归测试以识别潜在问题。如果数据库访问方法是模块化的,请考虑使用更新的扩展来重写它们。如果没有,请权衡升级 PHP 的好处与弃用错误的风险。
第三方项目: 与项目开发人员联系以获取修复或指导。抑制弃用错误可能是一个临时解决方案,但回归测试至关重要。
以上是为什么 PHP mysql 扩展已被弃用,有哪些替代方案?的详细内容。更多信息请关注PHP中文网其他相关文章!