代码示例
:
<?php
$s=str_repeat('1',256); //这和第二个例子完全相同
$p=&$s;
$m=memory_get_usage();
unset($s); //销毁$s
//by www.jbxue.com
$mm=memory_get_usage();
echo $p.'<br />';
echo $m-$mm;
?>
刷新页面,看到第一行有
256 个 1,第二行是 0,按理说已经销毁了$s,而$p 只是引用$s 的
变量,应该是没有内容了,另外,
unset($s)前后内存占用没变化!
例子:
代码示例
:
<?php
$s=str_repeat('1',256); //这和第二个例子完全相同
$p=&$s;
$m=memory_get_usage();
$s=null; //设置$s 为 null
$mm=memory_get_usage();
echo $p.'<br />';
echo $m-$mm;
?>
现在刷新页面,输出
$p 已经是没有内容了,unset()前后内存占用量之差是 272,即已经清
除了变量占用的内存。
本例中的
$s=null
也 可以换成
unset(),如下:
代码示例
:
<?php
$s=str_repeat('1',256); //这和第二个例子完全相同
$p=&$s;
$m=memory_get_usage();
unset($s); //销毁$s
unset($p);
$mm=memory_get_usage();
echo $p.'<br />';
echo $m-$mm;
?>