php构造函数与析构函数

yipeiwu_com6年前PHP代码库

php构造函数是对象创建完成后,第一个自动调用的方法,析构函数是当对象被释放之前最后一个自动调用的方法。本文章向大家介绍php构造函数与析构函数。

php构造函数

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

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

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

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

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

php析构函数

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中explode函数和split函数的区别小结

一、前言 之所以做这个,是因为这两个函数的作用很像,都是把字符串转换成数组。 二、explode 从下面的例子可以看出,生成的数组是有对应的顺序的。 $pizza = "piece1...

探讨PHP删除文件夹的三种方法

1、递归法 复制代码 代码如下:deleteDir($dir){if (rmdir($dir)==false && is_dir($dir)) {    i...

php中的静态变量的基本用法

静态变量只存在于函数作用域内,静态变量只存活在栈中。一般的函数内变量在函数结束后会释放,比如局部变量,但是静态变量却不会。下次再调用这个函数的时候,该变量的值会保留下来。 静态的变量的基...

解析dedecms空间迁移步骤详解

1.在新空间重新安装一次原版本的DEDECMS,然后把旧站的所有数据,这里的数据指的是文件,即除了根目录下文件夹include下的配置文件config_base.php外的所有文件覆盖到...

php 将字符串按大写字母分隔成字符串数组

alert("createTechBook".split(/(?=[A-Z])/)) 谢了啊 复制代码 代码如下: <?php $str="abcDefGhi"; /* preg_...