php - 为不同的项目开发不同的数据库特定转义机制有多重要?

标签 php mysql

众所周知,PHP 中的魔术引号已经被弃用,这样做是为了阻止依赖此功能来防止 SQL 注入(inject),并鼓励开发人员开发特定于数据库的转义机制。[来源:php.net] 这真的是吗?有必要吗?

如果是,

为什么?为什么我们不能只使用 mysql_real_escape_string()addslashes()stripslashes() 等函数来实现同样的事情,而不是开发一个不同的转义机制?

如果有示例的答案,我们将不胜感激。谢谢

最佳答案

mysql_real_escape_string() 已经是数据库特定的转义机制:)

如果您正在为新项目选择数据库层,请务必查看 PDO其准备好的语句将自动处理任何必要的转义。

关于php - 为不同的项目开发不同的数据库特定转义机制有多重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3317936/

相关文章:

mysql - 计算员工上个月在工作场所花费的每天平均小时数

python变量在字符串中插入单引号

php - 通过 PHP SSH 更改 Unix 远程服务器的密码

mysql - 带有数据库存储选项的 Codeigniter session 类未优化?

javascript - Ajax 操作真的应该有单独的 URL 吗?

php - 如何使用mysql中的count函数选项将行值一一分开

mysql - 如何在输出窗口中同时执行触发器内的两个 if 语句?

mysql - 计算具有值的行数,然后计算所有行的总数

php - array_shift 来自数组中的数组

javascript - php 搜索结果表的行为与原始表不同