在php的面向对象中,我们经常会见到和使用$this变量和::符号,那么$this和::在PHP面向对象中到底有什么作用,并且在PHP的面向对象类中又如何使用呢?
浩沐资源网将逐一的记载$this和::符号在PHP面向对象类中如何使用以及一个实例更加清晰的明白如何使用$this和::的使用。
$this在PHP类中的意思
$this在PHP中我们称之为伪变量,就是指他的本身。
- $this->属性名:调用的就是这个属性;
- $this->方法名:表示就是调用这个方法。
在我们的类中,$this这个变量只要我们创建了一个类,那么$this变量就是存在的,到底是不是这样的呢?下面我们使用isset()函数来验证一下$this是否存在。
$this在类中的实例代码
<?php
class cup{
public function term(){
//使用isset函数检测$this变量是否默认存在的类中
if(isset($this)){
echo '$this变量存在,他的值为:'.get_class();
}else{
echo '$this变量不存在';
}
}
}
$cup_term = new cup();
echo $cup_term->term();
?>
在上面的实例中,使用了get_class()函数,它的作用是返回对象实例的类名称。
::在PHP类中如何使用
::在PHP类中我们称之为作用域操作符。
语法格式:
关键字::变量名/常量名/方法名
- parent::调用父类中的成员变量、成员常量、成员方法
- self::可以调用出当前类中的静态成员和常量。
- 类名::使用类名可以调用本类中的成员变量和方法。
::在PHP类使用实例代码:
<?php
//创建一个关于世界杯的父类;
class world_cup{
//定义一个类常量;
const champion = '法国';
//新建一个构造方法
public function __construct()
{
//使用self关键词加作用域符号调用类常量
echo '世界杯冠军是:'.self::champion;
}
}
//创建一个世界杯的子类并让这个子类继承父类
class qatar_worldcup extends world_cup{
//创建一个子类的类常量。
const champion = '未知';
//新建一个子类的构造方法;
public function __construct()
{
//使用parent加作用域符号调用父类的构造方法;
parent::__construct();
echo '<hr>';
//使用类名加作用域符号调用类常量
echo '本次卡塔尔的冠军:'.qatar_worldcup::champion;
}
}
//实例化类
$qatar_champion = new qatar_worldcup();
?>
在上面的这个实例中,分别使用了parent、self、类名的形式加::调用了不同的构造方法和常量。
通过以上对$this和::作用域符号的简单介绍和两个实例代码,对$this和::作用符有了更加深入的了解和认识,在后续的文章中将记载更多有关PHP面向对象的学习笔记及实例代码。
1.本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:duhaomu@163.com,我们将第一时间处理!
2.资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。
3.所有资源仅限于参考和学习,版权归原作者所有,更多请阅读网站声明。