我是PHP的新手,所以如果这个问题是菜鸟,我很抱歉。我不知道它的名字所以找不到它。我在这段代码中读到了它。这是什么意思?
第5行:${$key}
<?php
$expected = array( 'carModel', 'year', 'bodyStyle' );
foreach( $expected AS $key ) {
if ( !empty( $_POST[ $key ] ) ) {
${$key} = $_POST[ $key ];
} else {
${$key} = NULL;
}
}
?>
答案 0 :(得分:3)
这与$$key
相同,表示名为$key
即
$test = "foo";
与
相同$a = "test";
$$a = "foo";
答案 1 :(得分:2)
这是一个变量变量。请在此处阅读更多内容:http://php.net/manual/en/language.variables.variable.php
答案 2 :(得分:1)
符号${$key}
是另一种写作风格,仅用于$$key
$var = 'foo_x';
$key = 'x';
${'foo_' . $x} = 'hello';
echo $foo_x; // hello
。
你可以使用这种表示法的一个特殊情况是当你做这样的技巧时:
{{1}}
答案 3 :(得分:0)
使用名称$ key设置变量。
$var = NULL;
$name = 'var';
${$name} = TRUE;
var_dump($var); // TRUE
以及:
$$name = TRUE;
答案 4 :(得分:0)
这是一种使用动态变量名称的方法。见这里:http://php.net/manual/en/language.variables.variable.php
答案 5 :(得分:0)
它允许使用复杂的表达式。
它称为复杂(卷曲)语法,您可以在http://php.net/manual/en/language.types.string.php#language.types.string.parsing.complex
找到更多信息