【问题标题】:Is there a function similar to mysql_real_escape_string for php's sqlsrv library? [duplicate]php的sqlsrv库有没有类似mysql_real_escape_string的函数? [复制]
【发布时间】:2012-03-12 15:28:59
【问题描述】:

我正在为 SQLSRV 库寻找类似于 mysql_real_escape_string 的函数。

特别是我在转义单引号时遇到了困难。而不是像 mysql 中那样使用"\" 转义,而是在另一个单引号前面使用单引号作为转义方法。

我正在使用preg_replace 提出自己的解决方案,但我只是想知道是否还有其他我遗漏的东西。

【问题讨论】:

  • 我找到了使用 preg_replace $pattern = "/'/"; $replacement = "''"; $output = preg_replace($pattern, $replacement, $input);的解决方案

标签: php sql-server


【解决方案1】:

我建议使用http://php.net/pdohttp://www.doctrine-project.org/http://www.propelorm.org/ 之类的抽象层

以 pdo 为例,您可以使用 http://php.net/manual/en/pdo.quote.php

【讨论】:

  • 这看起来确实是我的问题的一种解决方案,但我的所有代码都使用 sqlsrv 库,除了我的单引号问题外,它运行良好。我真的不想仅仅因为这个小问题就放弃它并从 pdo 重新开始。
  • 谢谢。您提供的解决方案信息量很大,由于 sqlsrv 没有 mysql_real_escape_string 的替代品,我将您的解决方案标记为正确答案。
  • 这绝对不是正确的答案。如果我想编写自定义抽象层,您有什么建议?在某些情况下,PDO 或 Doctrine 是一个不错的选择,但在某些情况下并非如此。
猜你喜欢
  • 2014-10-21
  • 1970-01-01
  • 1970-01-01
  • 2019-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-16
  • 1970-01-01
相关资源
最近更新 更多