为了账号安全,请及时绑定邮箱和手机立即绑定

使用unset()函数后,能给程序带来那些好处或者坏处?

使用unset()函数后,能给程序带来那些好处或者坏处?

PHP
森栏 2023-05-02 17:13:43
各位PHPer,大家好!今天小白请教PHP中unset()函数在何时使用才是正确的?大伙都知道unset是取消赋值,比如$aa="asdfasdf";echo $aa; //得到的结果是asdfasdfunset $aa;echo $aa; //得到的结果是空它的用法到是知道小白疑惑的就是在那些情况下应该使用unset()函数?小白先谢谢给位大神啦,o(∩∩)o...哈哈,^_^
查看完整描述

2 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

unset是用来取消一个变量,释放这个名称的. 应用的场景真的不算太多,因为PHP没有释放资源的需求,PHP进程只会存在很短时间.

我觉得应用在数组上的情况要多一点,用来删去数组中一个元素. 比如,为了把一个用户的信息插入数据库,我定义了这么一个数组:

$user = ["name" => "xxoo", "passwd" => "4d5c01842f37d", "email" => "xxoo@xo.ox"];$db->insert($user);

然后我还希望把这一条数据插入到日志中,但我又不希望在日志中保存密码,这时我只需要:

unset($user["passwd"]);$log->append($user);


查看完整回答
反对 回复 2023-05-04
?
郎朗坤

TA贡献1921条经验 获得超9个赞

由于php的资源自动回收机制,当页面执行完毕后,会自动释放所占用过的内存,所以在销毁变量释放内存这方面,一般用的不是太多。

但当较大的数组等变量较多时,在之后没再用到的情况下,可以unset掉以便释放内存。尤其是在可用内存比较紧张的时候。

另外要注意的是,

unset在函数中只能销毁局部变量。如果在程序中需要用到销毁全局变量的应该如何做呢?也很简单,用$GLOBALS数组来实现即可。


查看完整回答
反对 回复 2023-05-04
  • 2 回答
  • 0 关注
  • 134 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信