首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在SQL Server中使用PHP转义字符串?

如何在SQL Server中使用PHP转义字符串?
EN

Stack Overflow用户
提问于 2009-02-22 11:54:43
回答 10查看 124.3K关注 0票数 94

我正在寻找SQL Server的mysql_real_escape_string()的替代方案。addslashes()是我最好的选择,还是有其他可以使用的替代功能?

mysql_error()的替代方案也会很有用。

EN

Stack Overflow用户

发布于 2017-11-05 13:00:28

最好也对SQL保留字进行转义。例如:

代码语言:javascript
运行
复制
function ms_escape_string($data) {
    if (!isset($data) or empty($data))
        return '';

    if (is_numeric($data))
        return $data;

    $non_displayables = array(
        '/%0[0-8bcef]/',        // URL encoded 00-08, 11, 12, 14, 15
        '/%1[0-9a-f]/',         // url encoded 16-31
        '/[\x00-\x08]/',        // 00-08
        '/\x0b/',               // 11
        '/\x0c/',               // 12
        '/[\x0e-\x1f]/',        // 14-31
        '/\27/'
    );
    foreach ($non_displayables as $regex)
        $data = preg_replace( $regex, '', $data);
    $reemplazar = array('"', "'", '=');
    $data = str_replace($reemplazar, "*", $data);
    return $data;
}
票数 0
EN
查看全部 10 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/574805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档