14

我看到了这段代码

if (is_null($$textVarName)) {
$$textVarName = $_defaultTexts[$type];
}

什么是代码“$$”?

4

3 回答 3

39

它是邪恶的。

这将采用其中的值$textVarName并将其用作变量名。例如:

$foo = 'hello';
$hello = 'The Output';
echo $$foo; // displays "The Output"
于 2010-11-12T23:17:49.313 回答
4
foreach($_POST as $key=>$value)$$key=$value;

现在,自动地,如果以前的表单有一个名为“用户名”的字段,那么您现在有一个名为 $username 的变量,它保存表单中提交的值。不是最好的或最安全的方法,但是当你的口袋里装满钉子时,这就是一把锤子

这是非常糟糕的做法,从不鼓励,但我认识的所有 PHP 编码员都暗暗喜欢它。

于 2010-11-12T23:23:13.460 回答
2

参考见: http: //php.net/manual/en/language.variables.variable.php

于 2010-11-12T23:23:59.803 回答