|
创建对象$Person1且不带任参数
- $Person1 = new Person();
-
- echo $Person1->say(); //输出:我叫:,性别:男,年龄:27
创建对象$Person2且带参数“小明”
- $Person2 = new Person("小明");
-
- echo $Person2->say(); //输出:我叫:张三,性别:男,年龄:27
创建对象$Person3且带三个参数
- $Person3 = new Person("李四","男",25);
-
- echo $Person3->say(); //输出:我叫:李四,性别:男,年龄:25
二、__destruct(),类的析构函数
通过上面的讲解,现在我们已经知道了什么叫构造方法。那么与构造方法对应的就是析构方法。
析构方法允许在销毁一个类之前执行的一些操作或完成一些功能,比如说关闭文件、释放结果集等。
析构方法是PHP5才引进的新内容。
析造方法的声明格式与构造方法 __construct() 比较类似,也是以两个下划线开始的方法 __destruct() ,这种析构方法名称也是固定的。
1、 析构方法的声明格式
- function __destruct()
-
- {
-
- //方法体
-
- }
注意:析构函数不能带有任何参数。
2、 析构方法的作用
一般来说,析构方法在PHP中并不是很常用,它属类中可选择的一部分,通常用来完成一些在对象销毁前的清理任务。
举例演示,如下:
- <?php
- class Person{
-
- public $name;
- public $age;
- public $sex;
-
- public function __construct($name="", $sex="男", $age=22)
- {
- $this->name = $name;
- $this->sex = $sex;
- $this->age = $age;
- }
-
- /**
- * say 说话方法
- */
- public function say()
- {
- echo "我叫:".$this->name.",性别:".$this->sex.",年龄:".$this->age;
- }
-
- /**
- * 声明一个析构方法
- */
- public function __destruct()
- {
- echo "我觉得我还可以再抢救一下,我的名字叫".$this->name;
- }
- }
-
- $Person = new Person("小明");
- unset($Person); //销毁上面创建的对象$Person
上面的程序运行时输出:
我觉得我还可以再抢救一下,我的名字叫小明
三、 __call(),在对象中调用一个不可访问方法时调用。
该方法有两个参数,第一个参数 $function_name 会自动接收不存在的方法名,第二个 $arguments 则以数组的方式接收不存在方法的多个参数。 (编辑:南平站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|