不应该使用的技术原因是什么mysql_*
功能? (例如。mysql_query()
, mysql_connect()
or mysql_real_escape_string()
)?
即使其他东西可以在我的网站上运行,为什么我应该使用其他东西?
如果它们在我的网站上不起作用,为什么我会收到类似错误
警告:mysql_connect():没有这样的文件或目录
MySQL 扩展:
- 未在积极开发中
- Is 正式已弃用自 PHP 5.5(2013 年 6 月发布)起。
- Has been removed entirely as of PHP 7.0 (released December 2015)
- 这意味着截至2018 年 12 月 31 日它不存在于任何受支持的 PHP 版本中。如果您使用的 PHP 版本支持它,那么您使用的版本没有修复安全问题。
- 缺乏 OO 接口
- Doesn't support:
- 非阻塞、异步查询
- 准备好的报表或参数化查询
- 存储过程
- 多重陈述
- 交易
- “新”密码验证方法(MySQL 5.6 中默认启用;5.7 中必需)
- MySQL 5.1 或更高版本中的任何新功能
由于它已被弃用,因此使用它会使您的代码缺乏面向未来的能力。
缺乏对准备好的语句的支持尤其重要,因为与通过单独的函数调用手动转义外部数据相比,它们提供了更清晰、更不易出错的转义和引用外部数据的方法。
See SQL扩展的比较.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)