十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
小编给大家分享一下php怎么使用函数销毁变量,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
创新互联建站-专业网站定制、快速模板网站建设、高性价比浮梁网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式浮梁网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖浮梁地区。费用合理售后完善,十多年实体公司更值得信赖。
在开始文章之前,我们先来看一下什么是变量的销毁。
PHP的变量或对象的销毁可以分成显式销毁和隐式销毁:
1、显式销毁,当对象没有被引用时就会被销毁,所以我们可以unset或为其赋值NULL;
2、隐式销毁,PHP是脚本语言,在代码执行完最后一行时,所有申请的内存都要释放掉。
我们今天要介绍的就是显式销毁中的unset。
我们先来看一个小栗子。
'; } } $a = new Human(); $b = $c = $d = $a; unset($a); $d=null; echo '
'; var_dump($a); echo '
'; var_dump($b); echo '
'; var_dump($c); echo '
'; var_dump($d); ?>
结果是
话不多说,让我们来看一下这个函数吧。
unset()函数用于销毁给定的变量。
所以unset()并没有真正销毁变量中内存值,仅仅是切断了变量与内存之间的关系,并将变量名也给干掉了,但内存只要还被引用着就不会被释放;而在PHP中对象的传值默认是引用传值,这也解释了Human
类中,$a被unset()
了,但是$b =$c = $d
一样有值。
再来看看这个函数的语法吧。
void unset (要销毁的变量)
如果unset()是函数中的全局变量,则只销毁局部变量,并且调用环境中的变量将保持与调用unset()之前相同的值。
如果unset()是函数中通过引用传递的变量,则只销毁局部变量,并且调用环境中的变量将保持与调用unset()之前相同的值。
如果unset()是函数中的静态变量,则静态变量将在函数中销毁。但是,当再次调用此函数时,静态变量将恢复到上次销毁之前的值。
看完了这篇文章,相信你对“php怎么使用函数销毁变量”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!