欢迎光临
我们一直在努力

PHP 构造方法 __construct()

PHP 构造方法 __construct() 允许在实例化一个类之前先执行构造方法。
构造方法
构造方法是类中的一个特殊方法。当使用 new 操作符创建一个类的实例时,构造方法将会自动调用,其名称必须是 __construct() 。
在一个类中只能声明一个构造方法,而是只有在每次创建对象的时候都会去调用一次构造方法,不能主动的调用这个方法,所以通常用它执行一些有用的初始化任务。该方法无返回值。
语法:
function __construct(arg1,arg2,…)
{
……
}
例子:

name=$name;
        $this->age=$age;
    }

    function say() {
        echo "我的名字叫:".$this->name."
"; echo "我的年龄是:".$this->age; } } $p1=new Person("张三", 20); $p1->say(); ?>

运行该例子,输出:
我的名字叫:张三
的年龄是:20
在该例子中,通过构造方法对对象属性进行初始化赋值。
提示
PHP 不会在本类的构造方法中再自动的调用父类的构造方法。要执行父类的构造方法,需要在子类的构造方法中调用 parent::__construct() 。
PHP 析构方法 __destruct()
PHP 析构方法 __destruct() 允许在销毁一个类之前执行执行析构方法。
析构方法
与构造方法对应的就是析构方法,析构方法允许在销毁一个类之前执行的一些操作或完成一些功能,比如说关闭文件、释放结果集等。析构函数不能带有任何参数,其名称必须是 __destruct() 。
语法:
function __destruct()
{
……
}
我们在上面的例子中加入下面的析构方法:

//定义一个析构方法
function __destruct()
{
    echo "再见".$this->name;
}

再次运行该例子,输出:
我的名字叫:张三
我的年龄是:20
再见张三
提示
和构造方法一样,PHP 不会在本类中自动的调用父类的析构方法。要执行父类的析构方法,必须在子类的析构方法体中手动调用 parent::__destruct() 。
试图在析构函数中抛出一个异常会导致致命错误。

赞(0)
版权归原作者所有,如有侵权请告知。达维营-前端网 » PHP 构造方法 __construct()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址