如何通过unset函数销毁变量并彻底释放内存?

2026-04-01 06:550阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1011个文字,预计阅读时间需要5分钟。

如何通过unset函数销毁变量并彻底释放内存?

PHP的`unset()`函数用于清除、销毁变量。对于不再使用的变量,我们可以用`unset()`将其销毁。但有时使用`unset()`却无法释放变量占用的内存!例如:`$s=str_repeat('1', 255); // 产生大量数据`

PHP的unset()函数用来清除、销毁变量,不用的变量,我们可以用unset()将它销毁。但是某些时候,用unset()却无法达到销毁变量占用的内存!

我们先看一个例子:

<?php $s = str_repeat('1',255); //产生由255个1组成的字符串 $m = memory_get_usage(); //获取当前占用内存 unset($s); $mm = memory_get_usage(); //unset()后再查看当前占用内存 echo $m-$mm; ?>

最后输出unset()之前占用内存减去unset()之后占用内存,如果是正数,那么说明unset($s)已经将$s从内存中销毁(或者 说,unset()之后内存占用减少了),可是我在PHP5和windows平台下,得到的结果是:-48。

阅读全文

本文共计1011个文字,预计阅读时间需要5分钟。

如何通过unset函数销毁变量并彻底释放内存?

PHP的`unset()`函数用于清除、销毁变量。对于不再使用的变量,我们可以用`unset()`将其销毁。但有时使用`unset()`却无法释放变量占用的内存!例如:`$s=str_repeat('1', 255); // 产生大量数据`

PHP的unset()函数用来清除、销毁变量,不用的变量,我们可以用unset()将它销毁。但是某些时候,用unset()却无法达到销毁变量占用的内存!

我们先看一个例子:

<?php $s = str_repeat('1',255); //产生由255个1组成的字符串 $m = memory_get_usage(); //获取当前占用内存 unset($s); $mm = memory_get_usage(); //unset()后再查看当前占用内存 echo $m-$mm; ?>

最后输出unset()之前占用内存减去unset()之后占用内存,如果是正数,那么说明unset($s)已经将$s从内存中销毁(或者 说,unset()之后内存占用减少了),可是我在PHP5和windows平台下,得到的结果是:-48。

阅读全文