夜光带你走进 传奇语言php(55)进阶篇开始

夜光序言:

 

与其相见,不如怀念,与其攀缘,不如随缘。

人生不过是一场旅行,你路过我,我路过你,然后,各自修行,各自向前。

你什么时候随缘,什么时候就顺利。

当你无所求时,才会无所不有。事情本身没有好和坏,好坏是我们自己的分别执着。

随缘才能顺利,放下才能得到。

 

 

 

 

 

 

 

正文:

PHP类和对象之构造函数和析构函数

PHP5可以在类中使用__construct()定义一个构造函数,具有构造函数的类,会在每次对象创建的时候调用该函数,因此常用来在对象创建的时候进行一些初始化工作。

class Car {
   function __construct() {
       print "构造函数被调用\n";
   }
}
$car = new Car(); //实例化的时候 会自动调用构造函数__construct,这里会输出一个字符串

在子类中如果定义了__construct则不会调用父类的__construct,如果需要同时调用父类的构造函数,需要使用parent::__construct()显式的调用。

class Car {
   function __construct() {
       print "父类构造函数被调用\n";
   }
}
class Truck extends Car {
   function __construct() {
       print "子类构造函数被调用\n";
       parent::__construct();
   }
}
$car = new Truck();

同样,PHP5支持析构函数,使用__destruct()进行定义,析构函数指的是当某个对象的所有引用被删除,或者对象被显式的销毁时会执行的函数。

class Car {
   function __construct() {
       print "构造函数被调用 \n";
   }
   function __destruct() {
       print "析构函数被调用 \n";
   }
}
$car = new Car(); //实例化时会调用构造函数
echo '使用后,准备销毁car对象 \n';
unset($car); //销毁时会调用析构函数

当PHP代码执行完毕以后,会自动回收与销毁对象,因此一般情况下不需要显式的去销毁对象。

任务

我也来试一试:给Car类编写一个构造函数与析构函数。

在右侧代码编辑器第4行输入下面代码:

function __construct() {
       print "构造函数被调用 \n";
   }
function __destruct() {
       print “析构函数被调用 \n”;
}

class Car {
   function __construct() {
       print "父类构造函数被调用\n";
   }
}
class Truck extends Car {


/**
 * Created by PhpStorm.
 * User: 夜光
 * Date: 2019/7/14
 * Time: 21:26
 */
<?php
class Car {
    //增加构造函数与析构函数
    function __construct(){
        print "构招函数被调研\n";
    }
    function __destruct(){
        print "析构函数被调研";
    }
}
$car = new Car();
unset($car);

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值