关于php析构方法的使用详解

析构方法说明:
1.      析构方法会自动调用
2.      析构方法主要用于销毁资源(比如释放数据库的链接,图片资源...销毁某个对象..);

析构函数会在到对象的所有的引用都被删除或者当对象被显示销毁时执行.

3.      析构方法调用顺序是,先创建的对象后被销毁
4.      析构方法什么时候被调用
(1)    当程序(进程结束)退出时
(2)    当一个对象称为垃圾对象的时候,该对象的析构方法也会被调用,
(3)    所谓垃圾对象,就是指,没有任何变量再引用它.
(4)    一旦一个对象成为垃圾对象,析构方法就会立即调用

析构方法小结:
php5加入的的析构方法function __destruct()
②析构方法没有返回值也不接受参数
③主要作用是释放资源的操作,并不是销毁对象本身。
④在销毁对象前,系统自动的调用该类的析构方法
⑤一个类最多只有一个析构方法。

析构方法实例1:

name=$name;
		$this->age=$age;
		//假设此处有一个打开一个$conn链接数据库资源的函数体
	}
	//写一个析构方法 __ 是两个下划线
	function __destruct()
	{
		echo $this->name."      销毁资源   关闭数据库 . . 
"; } } $p1=new Person("1.贾宝玉",16); $p1=null; //$p1掷空是对其对应地址下标掷空,如$p1[0x678],即掷空了中括号中的数据,地址对应的数并没有改变。 //$p1掷空马上就要被销毁,所以p1p2p3的销毁顺序为:$p1->$p3->$p2 $p2=new Person("2.林黛玉",14); $p3=new Person("3.王熙凤",15); ?>

析构方法实例2:

name赋初使值 
            $this->name=$name;
            //通过构造方法传进来的$sex给成员属性$this->sex赋初使值 
            $this->sex=$sex;
            //通过构造方法传进来的$age给成员属性$this->age赋初使值 
            $this->age=$age;
        }
 
        //这个人的说话方法
        function say()
        {
            echo "我的名子叫:".$this->name." 性别:".$this->sex." 我的年龄是:".$this->age."
"; } //这是一个析构函数,在对象销毁前调用 function __destruct() { echo "再见".$this->name."
"; } } //通过构造方法创建3个对象$p1、p2、$p3,分别传入三个不同的实参为姓名、性别和年龄 $p1=new Person("张三","男", 20); $p2=new Person("李四","女", 30); $p3=new Person("王五","男", 40); //下面访问$p1对象中的说话方法 $p1->say(); //下面访问$p2对象中的说话方法 $p2->say(); //下面访问$p3对象中的说话方法 $p3->say(); ?>

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/10209.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚重蔚管理团队
上一篇 2018年9月30日 00:00
下一篇 2018年10月3日 21:21

相关推荐

  • 今日分享php 匹配。

    PHP是一种广泛使用的开源通用脚本语言,特别适合于Web开发,可以嵌入到HTML中,而MySQL则是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司,PHP和MySQL的结合是Web开发中的一种常见组合,…

    2024年6月20日
    01
  • PHP与数据库Docker化的集成。

    随着云计算和容器化技术的飞速发展,越来越多的开发者开始将应用程序Docker化,以提高效率和便捷性。今天,我们将探讨如何将流行的开发语言PHP和数据库Docker化,以实现更高效和可移植的开发流程。一、什么是Docker…

    2023年5月21日
    02
  • PHP入门指南:循环语句。

    PHP是一种广泛使用的编程语言,用于Web开发及其他许多领域。掌握PHP中的循环语句是成为优秀开发者的关键之一。在本文中,我们将讨论PHP的循环语句,包括for循环语句、while循环语句、和do-while循环语句。for循环语…

    2023年5月22日
    06
  • php数组随机位置中插入新元素(附代码)

    以下是php数组随机位置中插入新元素的代码 代码如下: //数组随机位置中插入元素 function inarr($arr,$str=''){ $key=array_rand($arr);//随机数组下标,插入位置 $arr2=array(); foreach($arr as $k=>$value){ …

    2018年3月13日
    0451
  • php的算术运算符与赋值运算符

    说明:是+ - * / % 赋值运算符--= 说明:就是给变量赋值的作用。

    2017年12月2日
    0204
  • PHP8中的函数:str_contains()的实用技巧。

    PHP8中新增的str_contains()函数是一种非常实用的字符串处理功能,它能够快速地判断一个字符串是否包含某一个子字符串。在实际应用中,它可以帮助我们快速定位出数据中的关键字,从而更加高效地进行数据处理和分析…

    2023年5月21日
    03
  • php如何使用PHP的AMQP扩展。

    随着互联网技术的发展,越来越多的网站需要处理大量的并发请求和实时数据。为了满足这些需求,消息队列成为了一种受欢迎的解决方案。PHP 调用消息队列服务需要使用消息队列协议,而 AMQP(Advanced Message Queuing…

    2023年6月3日
    04
  • PHP实现防盗链的方法分析

    本文实例讲述了PHP实现防盗链的方法。分享给大家供大家参考,具体如下: $_SERVER['HTTP_REFERER']的获取情况 注意 $_SERVER['HTTP_REFERER'] 并不一定总能获取到,只有在以下情况下才能获取到: 一、能够取到HTTP_…

    2017年12月7日
    0228

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息