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

WBOY
풀어 주다: 2016-06-23 13:32:17
원래의
836명이 탐색했습니다.

一、类与对象

不仅在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: 罗坚元

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿