我尝试了这个 Google 查询,但它没有显示(可能是因为 { 被解析为某些特殊字符或被忽略)。
我在某处看到一个示例查询,如下所示:
SELECT `id` FROM areas WHERE `name` = '{$listing['cityname']}'
这是在 PHP 中(所以在 mysql_query()
中)
我最好的猜测是它作为小写字母搜索(与 LOWER(
name) AS...
相同)但我想 100% 确定它应该如何工作。
最佳答案
那是 PHP 语法,不是 MySQL 语法。它允许您插入 complex expressions在双引号字符串中。因此,在您的示例中,数组索引 $listing['cityname']
将被评估,其值将用于您的查询。
它与 SQL 无关。
顺便说一句,假设数组值还没有用 mysql_real_escape_string()
之类的东西转义,这是一个巨大的 SQL 注入(inject)漏洞。大多数人使用 prepared statements最近用于构建 SQL 查询。
关于php - {} 在 MySQL 查询中做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8847014/