如何使postgresql将反斜杠解释为绑定值中的转义字符?

时间:2019-01-23 22:20:26

标签: php postgresql

我正在尝试执行以下操作:

$json_string = '[{"text":"And I quote, \"Hello world!\""}]';
$query = "INSERT INTO table (json_column) VALUES (:bind)";
$bind = array('bind' => $json_string);

问题在于JSON字符串已转义了双引号。

我知道SQL标准是将反斜杠解释为原义字符,并且在我的postgresql数据库中,启用了standard_conforming_strings(应该如此)。我知道如果我在查询中使用文字字符串,则可以使用格式E'[{"text":"And I quote \"Hello world!\""}]',而postgresql会将反斜杠解释为转义字符。但是我绑定了PHP中的值。

那么我怎样才能使postgresql将反斜杠解释为绑定值中的转义字符?我尝试了E:bind,但收到错误消息“列e $ 1不存在”。

0 个答案:

没有答案