php中this、self、parent解析
2013-10-30 21:54
239 查看
概述:
this:指向类当前对象的指针;self:指向类本身,一般指向类中的静态变量;parent:指向父类的指针,一般使用parent来调用父类的构造函数。
下面通过程序详细介绍:
1、this
this是在对象实例化的时候确定指向,指向类当前的对象。
2、self
self和类的对象没有关系,它指向类本身。
3、parent
使用parent来调用父类的构造函数。
this:指向类当前对象的指针;self:指向类本身,一般指向类中的静态变量;parent:指向父类的指针,一般使用parent来调用父类的构造函数。
下面通过程序详细介绍:
1、this
<?php class Model_this{ private $name; //定义类私有成员 function __construct($name){ //PHP 5 允许定义构造函数和析构函数 $this->name = $name; } function __destruct(){} function showName(){ echo $this->name."\n"; } } $obj_1 = new Model_this("Jim"); $obj_2 = new Model_this("Tom"); $obj_1->showName(); //输出Jim $obj_2->showName(); //输出Tom ?>
this是在对象实例化的时候确定指向,指向类当前的对象。
2、self
<?php class Model_self{ private static $num = 0; private $sum; function __construct(){ $this->sum = ++self::$num; } function showSum(){ echo $this->sum."\n"; } } $obj_3 = new Model_self(); $obj_3->showSum(); //输出1 $obj_4 = new Model_self(); $obj_4->showSum(); //输出2 ?>
self和类的对象没有关系,它指向类本身。
3、parent
<?php class BaseClass{ public $name; function __construct($name){ $this->name = $name; } } class SubClass extends BaseClass{ private $sex, $age; function __construct($sex, $age){ parent::__construct("Jim"); $this->sex = $sex; $this->age = $age; } function showInfo(){ echo $this->name." is a ".$this->sex; echo " and ".$this->age." years old.\n"; } } $obj_jim = new SubClass("man", 23); $obj_jim->showInfo(); //输出 Jim is a man and 23 years old. ?>
使用parent来调用父类的构造函数。
相关文章推荐
- php中this、self、parent解析
- thinkphp RBAC使用说明BY holy(写的很清晰)
- PHP "Easter Egg"
- php上传图片 继上一篇上传失败原因
- EditPlus 3设置字体大小(附图)
- mfc 利用CXTPChartControl画柱状图,响应柱状图单击事件
- 用zf.bat创建zendframework项目时,出现的pdo错误
- Yiibooster popover 鼠标置于popover上 不隐藏
- php-fpm监控监本
- ThinkPHP3.1快速入门(16)安全
- php开发环境搭建
- Windows下编译 ImageMagick 的php API
- 从PHP官网被攻击,到熟悉SSL(安全链路层)
- 【PHP】配置windows 系统PHP系统环境变量
- 64位Windows Server 2208 R2不能运行php
- PHP中获取中英文混合字符串长度[主要是指个数,而不是字符串长度](转)
- phpize学习
- php使用ICQ网关发送手机短信
- 存储方式之ContentProvider
- ubuntu配置好FTP后总是上传失败