Php MySQL括号?

Php MySQL括号?,php,sql,mysql,syntax,Php,Sql,Mysql,Syntax,最近,我看到很多PHP/MySQL问题将SQL值括在{}中,例如: SELECT * FROM table WHERE field LIKE '{$value}'; 怎么回事?它甚至有效吗?为什么这么多人使用这种奇怪的语法(至少对我来说是这样?这些语法用于消除变量名的歧义,如果在双引号字符串中使用数组,则绝对需要,例如: $SQL = "Select * FROM table WHERE field LIKE '{$value[5]}'"; 没有牙套就不行 下面是来自PHP.net的另一个很

最近,我看到很多PHP/MySQL问题将SQL值括在
{}
中,例如:

SELECT * FROM table WHERE field LIKE '{$value}';

怎么回事?它甚至有效吗?为什么这么多人使用这种奇怪的语法(至少对我来说是这样?

这些语法用于消除变量名的歧义,如果在双引号字符串中使用数组,则绝对需要,例如:

$SQL = "Select * FROM table WHERE field LIKE '{$value[5]}'";
没有牙套就不行

下面是来自PHP.net的另一个很好的例子

$beer = 'Heineken';
echo "$beer's taste is great"; // works; "'" is an invalid character for variable names
echo "He drank some $beers";   // won't work; 's' is a valid character for variable names but the variable is "$beer"
echo "He drank some ${beer}s"; // works
echo "He drank some {$beer}s"; // works

来自:

复杂(卷曲)语法

这不是复杂的,因为 语法很复杂,但因为 允许使用复杂的 表情

实际上,名称空间中的任何值 可以包含在此字符串中 语法。简单地写下表达式 和看上去一样 在绳子外面,然后把它包起来 在{和}中。因为{不能 转义,此语法将仅为 美元立即到期时确认 跟随{。使用{\$获取 文字{$


{}在那个例子中是不必要的,它不是括号,而是大括号。