怎么在PHP中利用设置对变量进行销毁

介绍

这期内容当中小编将会给大家带来有关怎么在PHP中利用设置对变量进行销毁,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

代码如下:


(i=1美元;美元我& lt;100;$ + +){
$ str=函数(& # 39;01234567 & # 39;我美元);
$一个=memory_get_usage ();
设置(str);
$ b=memory_get_usage ();
回声“\ n
“。我公司# 39;美元:& # 39;。(b - a)美元强生# 39;字节强生# 39;;
}


从结果看出:
8 x 32=256在256字节长的时候才真正有必要释放内存,有些人说,不如直接$ str=null来的速度快。
结果如下:
1: 0字节。
2: 0字节。
3: 0字节。
4: 0字节。
5: 0字节。
6: 0字节。
7: 0字节。
8: 0字节。
9: 0字节。
10: 0字节。
11: 0字节。
12: 0字节。
13: 0字节。
14: 0字节。
15: 0字节。
16: 0字节。
17: 0字节。
18: 0字节。
19: 0字节。
20: 0字节。
21: 0字节。
22: 0字节。
23: 0字节。
24: 0字节。
25: 0字节。
26: 0字节。
27: 0字节。
28: 0字节。
29: 0字节。
30: 0字节。
31: 0字节。
32: -272字节。33
: -280字节。
34: -288字节。
35: -296字节。
36: -304字节。
37: -312字节。
38: -320字节。
39: -328字节。
40: -336字节。
41: -344字节。
42: -352字节。
43: -360字节。
44: -368字节。
45: -376字节。
46: -384字节。
47: -392字节。
48: -400字节。
49: -408字节。
50: -416字节。
51: -424字节。
52: -432字节。
53: -440字节。
54: -448字节。
55: -456字节。56
: -464字节。
57: -472字节。
58: -480字节。
59: -488字节。
60: -496字节。61年
: -504字节。62年
: -512字节。63年
: -520字节。64年
: -528字节。65年
: -536字节。66年
: -544字节。67年
: -552字节。68年
: -560字节。69年
: -568字节。70年
: -576字节。71年
: -584字节。72年
: -592字节。73年
: -600字节。74年
: -608字节。75年
: -616字节。76年
: -624字节。77年
: -632字节。78年
: -640字节。79年
: -648字节。80年
: -656字节。81年
: -664字节。82年
: -672字节。83年
: -680字节。84年
: -688字节。85年
: -696字节。86年
: -704字节。87年
: -712字节。88年
: -720字节。89年
: -728字节。90年
: -736字节。91年
: -744字节。92年
: -752字节。93年
: -760字节。94年
: -768字节。95年
: -776字节。96年
: -784字节。97年
: -792字节。98年
: -800字节。99年
: -808字节。

我们先看一个例子

代码如下:


& lt; ?php
$ s=函数(& # 39;1 & # 39;255);//产生由255个1组成的字符串
$ m=memory_get_usage ();//获取当前占用内存
设置($ s);
$毫米=memory_get_usage ();//设置()后再查看当前占用内存
回声m - mm美元;
?比;


最后输出设置()之前占用内存减去设置()之后占用内存,如果是正数,那么说明设置(s)美元已经将$ s从内存中销毁(或者说,设置()之后内存占用减少了),可是我在PHP5和windows平台下,得到的结果是:-48年。这是否可以说明,复原(s)美元并没有起到销毁变量$ s所占用内存的作用呢?我们再作下面的例子:

代码如下:


& lt; ?php
$ s=函数(& # 39;1 & # 39;256);//产生由256个1组成的字符串
$ m=memory_get_usage ();//获取当前占用内存
设置($ s);
$毫米=memory_get_usage ();//设置()后再查看当前占用内存
回声m - mm美元;
?比;


这个例子,和上面的例子几乎相同,唯一的不同的是,256年代由1个组成,即比第一个例子多了一个1,得到结果是:224年。这是否可以说明,复原(s)美元已经将$ s所占用的内存销毁了?
通过上面两个例子,我们可以得出以下结论:结论一,设置()函数只能在变量值占用内存空间超过256字节时才会释放内存空间。
那么是不是只要变量值超过256年,使用设置就可以释放内存空间呢?我们再通过一个例子来测试一下:

代码如下:


& lt; ?php
$ s=函数(& # 39;1 & # 39;256);//这和第二个例子完全相同
p=美元,美元的年代;
$ m=memory_get_usage ();
设置($ s);//销毁s
毫米=美元memory_get_usage ();
echo $ - - # 39; & lt; br/祝辞& # 39;;
回声m - mm美元;
?比;


& # 39;刷新页面,我们看到第一行有256个第二行是-48年,按理说我们已经销毁了美元,而美元p只是引用$ s的变量,应该是没有内容了,另外,设置($ s)后内存占用却比设置()前增加了!现在我们再做以下的例子:

怎么在PHP中利用设置对变量进行销毁