处理撇号,php和pgsql

时间:2010-05-27 14:03:10

标签: php sql forms string apostrophe

对于我的表单,我在每个字段上使用pg_escape_string,然后将它们插入到数据库中。所以我得到类似firstname ='O''reilly'的东西。但是当我尝试将其打印出来时,我得到了奥谢利,2撇号。 O'reilly不应该只有1撇号吗?

这不是一个调试问题,我只是想知道你是否有firstname ='O''reilly',你怎么打印它所以它只是O'reilly而不是O''reilly?

1 个答案:

答案 0 :(得分:0)

DB库通常不会(或从不)具有unescape功能,因为没有必要这样做。 DB将存储并返回未转义的数据。此外,由于您正在调用该函数,这意味着您已经拥有未转义形式的数据。

但是,您可以通过简单调用str_replace从字符串中删除双撇号:

echo str_replace("''", "'", "O''reilly");