$$a    <======>    ${$a}   <======>    $hello

解决方案 »

  1.   

    $a="hello"; 
    $$a="world"; -〉$hello="world";
    echo="$a${$a}"; ->echo $a.$hello;所以就是 hello word参见http://cn.php.net/manual/zh/language.variables.variable.php
      

  2.   

    此为变量的变量!
    在这个{}符号内的$a会优先做为变量来输出。可以理解为优先级最高。1. 你这里写错了吧?哪有echo="$a${$a}";echo="$a$hello";这样的?应该是echo "$a${$a}";和echo "$a$hello";的吧?echo 后面怎么跟"="了?2. echo "$a${$a}"可以分开来理解:
    因为$a = "hello";
    那么$$a == ${$a} == $hello;
    所以echo "$a${$a}"; 会输出:hello world3. echo "$a$hello"同样的道理
    因为$a="hello";
    又因为$$a="world"; 可以理解为:${$a} == $hello;
    所以echo "$a$hello"; 会输出:hello world在这里,$$a会被解释为$a的变量,$a在内存中对应的值为"hello",$$a就相当于$hello了。
      

  3.   

    <?php
    $a="hello";
    $$a="world";
    echo "$a${$a}";
    >
    用""引用的字符串,{}里的PHP是优先解析的,并且允话在{}里用数组和对象,因此上面执行步骤是:"$a${$a}"  => "$a${hello}} => "hello${hello}" => "hello world"