问答详情
源自:2-7 PHP类和对象之访问控制

这里面的self和this用法区别到底是什么啊?

这里面的self和this用法区别到底是什么啊?

提问者:爆炸头shadow 2017-05-14 06:47

个回答

  • _晴不知所起一往而深_
    2017-06-03 12:03:32

    private static $speed = 10;
    public $name='汽车';
    public function getSpeed() {
          return self::$speed;
        }
    public function getName(){
          return $this->name;
        }


    self::$speed;静态属性用这个
    $this->name;普通属性用这个

    this就是指向当前对象实例的指针,不指向任何其他对象或类。
    self是指向类本身,也就是self是不指向任何已经实例化的对象,一般self使用来指向类中的静态变量。假如我们使用类里面静态(一般用关键字static)的成员,我们也必须使用self来调用。还要注意使用self来调用静态变量必须使用:: (域运算符号),

     http://11463531.blog.hexun.com/81211052_d.html      
         


  • 慕粉1227463369
    2017-05-14 09:46:50

    由于静态方法不需要通过对象即可调用,所以伪变量 $this 在静态方法中不可用