PHP类和对象扩展[构造函数,析构函数]

构造函数

特性:实例化对象时调用

作用:通常用于 初始化属性值 或 执行启动时所需的操作

用法:

function __construct($parameter){

        $this->attribute = $parameter;

        echo '对象已创建并,初始化attribute属性值为parameter';

}

析构函数

特性:对象销毁,或脚本结束时调用

作用:通常用于清理资源如内存和链接,本篇实例用于弹窗提示

用法:

function __destruct(){

        echo "脚本已结束";

}

 

实例

创建scan类,添加三个成员变量。一个成员函数用于输出属性。一个构造函数用于初始化属性值。一个析构函数,函数内使用echo输出script标签,用于弹出弹框。

源码

<?php
    header("content-type:text/html;charset=utf8");
    class scan{
        var $target;
        var $address;
        var $DesPort;
        function task(){
            echo $this->target . '  参数:' .  $this->address . $this->DesPort;
        }
        //构造函数
        function __construct($target,$address,$DesPort='all'){
            $this->target = $target;
            $this->address = $address;
            $this->DesPort = $DesPort;
            echo '<p> 对象已实例化 </p><hr>';
        }
        //析构函数
        function __destruct(){
            echo "<script>alert('析构函数已触发,' + '函数调用已完成')</script>";
        }

    }
    //实例化对象,指定属性值
    $one = new scan('win10','192.168.10.1');
    //调用对象内方法
    $one->task(); //win10 参数:192.168.10.1all
    //输出对象属性值
    echo '<br>' . $one->target . '<br>'; //win10
    echo $one->address; //192.168.10.1
    echo '<br>' . $one->DesPort; //all
   

?>

1.创建scan类并添加成员变量及方法

class scan{
        var $target;
        var $address;
        var $DesPort;
        function task(){
            echo $this->target . '  参数:' .  $this->address . $this->DesPort;
        }

........

}

2.定义构造函数用于接收对象创建时传参,并赋值给对象本身的属性,为DesPort属性设置默认值。

function __construct($target,$address,$DesPort='all'){
            $this->target = $target;
            $this->address = $address;
            $this->DesPort = $DesPort;
            echo '<p> 对象已实例化 </p><hr>';
        }

3.定义析构函数,于代码或脚本结束后调用。函数内使用echo输出script标签中alert标签,并进行字符串的拼接,用于弹窗提示。

function __destruct(){
            echo "<script>alert('析构函数已触发,' + '函数调用已完成')</script>";
        }

4.实例化对象,并传入参数

$one = new scan('win10','192.168.10.1'); 

5.调用对象内方法

$one->task(); //win10 参数:192.168.10.1all    

6.输出对象属性值

echo '<br>' . $one->target . '<br>'; //win10    

echo $one->address; //192.168.10.1

echo '<br>' . $one->DesPort; //all

 

 

 

 

  • 19
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值