{}在MySQL查询中做了什么?

时间:2012-01-13 07:00:17

标签: php mysql

我尝试了这个Google查询但它没有显示(可能是因为{被解析为某些特殊字符或被忽略)。

我看到一个关于某个示例的查询,如下所示:

SELECT `id` FROM areas WHERE `name` = '{$listing['cityname']}'

这是在PHP中(所以在mysql_query()内)

我最好的猜测是它搜索为小写(与LOWER(名称) AS...相同),但我想100%确定它应该如何工作。

1 个答案:

答案 0 :(得分:10)

这是PHP语法,而不是MySQL语法。它允许您在双引号字符串中插入complex expressions。因此,在您的示例中,将评估数组索引$listing['cityname'],并在查询中使用其值。

它与SQL无关。

顺便说一句,这是一个巨大的SQL注入漏洞,假设数组值尚未使用mysql_real_escape_string()之类的东西进行转义。这些天大多数人使用prepared statements来构建SQL查询。