开启辅助访问
帐号登录 |立即注册

php面向对象之$this->用法简述

 
在成员方法中,调用成员方法的方法是对象名加方法名,格式就是“对象名->方法名”。但是在定义类的时候,我们往往不知道对象名是什么,所以就没法用对象名,这时,我们就要用到伪变量$this。
什么是$this?
$this的意思就是本身,在$this中有个指针,谁调用它,他就指向谁,它只能再类内部使用。
$this用法实例:
我们来举个例子,让大家可以更加清楚的看到这个$this的含义指向。

<?php
header("content-type:text/html;charset=utf-8");
class Preson{                                                //定义类
  public $name;
  public $age;
  public function __construct($Name,$Age)        //构造函数
  {
     $this -> name = $Name;
     $this -> age = $Age;
     echo '<pre>';
     var_dump($this);                  //打印出$this
  }
  public function showInfo(){             //成员方法
     echo "个人信息:";
     echo '<br/>' . "名字是:" . $this -> name . '<br/>' . "年龄是:" . $this -> age;
  }
}
$preson = new Preson("小草",25);           //实例化
var_dump($preson);                    //打印出$this
$preson -> showInfo();
echo '<hr>';
$preson = new Preson("大树",30);           //实例化
var_dump($preson);                   //打印出$preson
$preson -> showInfo();

1491801944853615.png

从上图我们可以看到结果对比。打印出来的$this和$preson结果是一样的,也就是说,$preson调用了$this,$this指向的就是它,所以说结果是一样的。因此$this究竟指向哪是由所实例化的对象决定的,指向当前对象实例的指针。包括变量、方法都是如此。也就是印证了我们上面的话谁调用它,他就指向谁。

回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

友情链接
  • 艾Q网

    提供设计文章,教程和分享聚合信息与导航工具,最新音乐,动漫,游戏资讯的网站。