2010-05-27 96 views
1

对于我的表单,我在每个字段上使用pg_escape_string,然后将其插入到数据库中。所以我得到了像firstname ='O''reilly'的东西。但是当我试图打印出来的时候,我得到了O''reily的两个撇号。奥列利不应该只有一个撇号吗?处理撇号,php和pgsql

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

+3

我们可以看到代码:

但是,你可以从一个字符串用一个简单的调用str_replace去除双引号?我们可以做一些心理调试,但不容易。 – Powerlord 2010-05-27 14:06:34

回答

0

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

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