构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。

1.是对象创建完成后,“第一个”“自动调用”的方法
2.构造方法的定义,方法名是一个固定的,

在php4中:和类名相同的方法就是构造方法
在php5中:构造方法选择使用 魔术方法construct() 所有类中声明构造方法都使用这个名称

优点:在改变类名时,构造方法不用改变

魔术方法: 在类中写出了某个魔术方法,这个方法对应的功能就会添加上
方法名称都是固定的(都是系统提供好的),没有自己定义的
每一个魔术方法,都是在不同时刻为了完成某一功能自动调用的方法
不同的魔术方法有不同的调用时机
都是以 开头的方法
construct(); destruct(); set();......

作用:为成员属性初始化;

php析构函数

析构函数(destructor) 与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,delete会自动调用析构函数后释放内存)。

1.当对象被释放之前最后一个“自动”调用的方法
使用垃圾回收器(java php),而c++手动 的释放
作用:关闭一些资源,作一些清理的工作

destruct();

php构造函数与析构函数实例

class Person{ var $name; var $age; var $sex; //php4中的构造方法 /*function Person() { //每声明一个对象都会调用 echo "1111111111111111"; }*/ //php5中的构造方法 function construct($name,$age,$sex){ $this->name=$name; $this->age=$age; $this->sex=$sex; } function say(){ //$this->name;//对象中成员的访问使用$this echo "我的名字:{$this->name},我的年龄:{$this->age}<br>" } function run(){ } function eat(){ } //析构方法 function destruct(){ } } $p1=new Person("zhangsan",25,"男"); $p2=new Person; $p3=new Person;

以上就是php构造函数与析构函数详解的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码