当回显$ {$ b}时,为什么这个逻辑中的$ b“b”

时间:2010-03-27 09:02:04

标签: php variables

我原以为$ {$ b}是'a'但是'b',为什么会这样?

$a = "b";
$b = "a";

很抱歉,我忘了把$ {$ b}生成“b”

5 个答案:

答案 0 :(得分:5)

variable variable expression ${$b}获取变量名称$b的值。因此${$b}评估为${"a"},相当于$a,然后评估为"b"

答案 1 :(得分:3)

  

如果您使用$ {$ b}则等于   美元。所以那个时候它会打印“b”   仅

答案 2 :(得分:2)

不可能。

$b = "a";
${$b} == $a;
$a = "b";
${$b} == "b"

答案 3 :(得分:2)

我唯一能想到的是,当你获得它的价值时,你忘记了$。对于新的php程序员来说,这是一个非常常见的拼写错误(甚至对于使用其他语言编程的有经验的程序员也是如此)。

答案 4 :(得分:0)

现在添加

是有道理的
Sorry again I forgot to put ${$b} produces "b"

按预期工作:您使用$b(包含“a”)作为变量名称。因此,最终结果是,您正在查询$a