微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP构造方法和析构函数

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

例:创建一个类,初始化创建的类

class p{
//定义变量
    public $name;
    public $sex;
    public $age;

}


//赋值
$a1 = new p();
$a1->name = '张三';
$a1->sex = '男';
$a1->age = 20;

  如果需要的变量很多,可以用构造函数来写,构造函数的作用就是用来初始化对象的。该方法可以没有参数,也可以有多个参数

定义构造函数:__construct(),注意的是函数construct前面是两个下划线"_".

class p{
    public $name;                     //定义变量
    public $age;
    public $sex;
    public $height;

    function __construct($name,$age,$sex,$height){
    $this->name = $name;         //为变量赋值
    $this->age = $age;
    $this->sex = $sex;
    $this->height = $height;

    }

    function Play(){
    if($this->height>175 || $this->age < 22){
    return    $this->name . "可以打篮球";
    }else{
    return $this->name . "不具备打球的条件";
        }

    }

}

$Preson1 = new p("白白","20","女","180");

echo $$Preson1->Playl();    

  构造方法是初始化对象时使用的,如果没有构造方法,那么PHP自动生成一个自动生成的构造方法没有任何参数,没有任何操作。

 

析构方法

1、析构方法一个特殊的方法,名字为固定的词:_ _destruct

2、析构方法是在一个对象被“销毁”的时候会自动调用方法——我们无法调用它;

3、析构方法不能带参数(形参),但方法中也可以使用$this这个词,代表“当前对象”

 

析构方法没有返回值.

主要作用是释放资源.并不是销毁对象本身.

在销毁对象前,系统自动调用该类的析构方法.

.一个类最多只有一个析构方法.

 

class Person 
    { 
        public $name; 
        public $age; 
        //构造方法 
        function __construct($name,$age) 
        { 
            $this ->name = $name; 
            $this ->age = $age;  
        } 
        //析构方法 
        function __destruct() 
        { 
            echo "姓名:".$this->name.", 年龄".$this->age."-->销毁<br />"; 
        } 
    } 
    $p1= new Person("小小",18); 
    $p2= new Person("大大",17); 

  结果: 

     姓名:小二, 年龄17-->销毁 

     姓名:小一, 年龄18-->销毁

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐