Home  >  Q&A  >  body text

关于php中面向对象的问题?

  1. 在类中使用__get()和__set()时,括号中的变量什么用

  2. 什么时候使用$this->$name 什么时候使用$this->name.
    讲的稍微细致一些,求大神指点

素颜素颜2883 days ago1153

reply all(2)I'll reply

  • 数据分析师

    数据分析师2017-09-30 22:40:22

    About object-oriented issues in php? -PHP Chinese website Q&A-About object-oriented issues in PHP? -PHP Chinese website Q&A

    Please watch and learn.

    reply
    0
  • 阿神

    阿神2016-12-17 10:07:55

     __get()和__set()是魔术方法,指当你获取/设置属性值时默认执行的操作,一般来说很少用到,一般框架级别的代码才用到这个(意思是开发框架,而不是指在框架基础上二次开发),需要用的话可以看一下手册或者搜索一下。
    $this->$name是来源于php的一种特性,即变量的变量。例如
    $name = 'hello';
    $hello = 'world';
    echo $$name; //得到world,等同于 echo $hello
    因此$this->$name的意思是获取当前对象的$name变量指明的属性,而$this->name是指获得当前对象的name属性。 

    reply
    2
  • Cancelreply