首頁  >  文章  >  後端開發  >  PHP类与对象,构造函数和析构函数,加上this绑定详解

PHP类与对象,构造函数和析构函数,加上this绑定详解

WBOY
WBOY原創
2016-06-23 13:32:17838瀏覽

一、类与对象

不仅在PHP中,在所有面向对象程序设计语言中,类都是抽象的,对象是类的一个实例。所有抽象就是:”抽取出相像的”。

在生活中,人是一个类,抽出相像的是:人都有五官,头发,手脚,会吃饭睡觉等等。

看一下PHP中的类与对象代码的实现

<?php class Person{ //定义一个叫Person的类 public $name; //声明共有的属性:名字 public function say(){ //声明共有的方法:说话 echo 'saying'; } } ?>

构造函数和析构函数

构造函数是在new一个对象的时候执行的方法,析构函数是对象被销毁的时候执行的方法。

对象的销毁可以显式销毁或者等代码页面执行完毕后自动销毁。

<?php class Person{ //定义一个叫Person的类 public $name; //声明共有的属性:名字 public function say(){ //声明共有的方法:说话 echo 'saying'; } public function __construct(){ //固定的__construct声明构造函数 echo 'construct'; //在对象创建时输出 } public function __destruct(){ echo 'destruct'; //对象销毁时输出 } } $a =new Person(); //输出construct //待代码结束后输出 destruct ?>

this的绑定

this返回当前绑定的对象。在PHP中如果要在方法体中调用对象中的属性,都要加上 this,否则被认为是局部变量。

<?php class Person{ //定义一个叫Person的类 public $name='color'; //声明共有的属性:名字 public function say(){ //声明共有的方法:说话 echo 'saying'; } public function __construct(){ echo $this->name; //输出color,如果是echo $name会报错,因为此时的$name未定义 } } $a=new Person(); ?>

本文作者: By: 罗坚元

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn