PHP PDO Prepared Statement Query不替代

Dav*_*ave 1 php mysql pdo prepared-statement

我有一小段PHP代码:

$stm = $db->prepare($sql);
$result = $stm->execute($params);
Run Code Online (Sandbox Code Playgroud)

$ params如下

array(1) {
  [0]=>
  string(3) "why"
}
Run Code Online (Sandbox Code Playgroud)

但是,发送到MySQL的$ sql仍然包含一个根据MySQL日志的问号:

1 Query SELECT a.* FROM article a
LEFT JOIN article_links al on a.id = al.from_article_id
WHERE al.to_article = '?'
Run Code Online (Sandbox Code Playgroud)

是否有其他东西我缺少替代?

jVa*_*ron 6

您不需要在问号周围加上单引号:

SELECT a.* FROM article a
LEFT JOIN article_links al on a.id = al.from_article_id
WHERE al.to_article = ?;
Run Code Online (Sandbox Code Playgroud)