如题:对象支持可变吗?

解决方案 »

  1.   


    不行啊
    类名支持可变
    但对象就是不行<?php
      class obj{
        public $test='测试';
      }  $obj2=new obj;
      $obj3="obj2";
      var_dump($obj3->test);  
      
      

  2.   

    可变变量是这么用得吗?class obj{
        public $test='测试';
      }
     
      $obj2=new obj;
      $obj3="obj2";
      var_dump($$obj3->test);  string(4) "测试"
      

  3.   

    那么你自己想想
    $obj2=new obj;
    var_dump($obj2->test);
    该是什么结果?那么
    $obj3="obj2";
    var_dump($$obj3->test);
    是不是该多一个 $
      

  4.   


    嗯,知道了
    如果一个$的话,PHP会直接把自身当作一个对象,通过$obj3去获取其本身的属性,但后来发现$obj3并不是一个对象,而是一个变量,而变量不能直接访问对象的属性,所以要在其前面加上一个$,后来PHP发现又发现$obj2并不单单是一个变量而已,而是大名鼎鼎的对象,所以此时$obj3才是一个对象,然后就获取到了。
    哈哈
    不知道理解的正确不...
    一直不敢自己下结论
      

  5.   

    感谢版主,感谢IT民工,感谢CSDN,感谢论坛的发明者,是你们又让我看到了光明,又让我找到了荀活下去的的理由