php查询内存信息操作示例

时间:2022-07-27
本文章向大家介绍php查询内存信息操作示例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了php查询内存信息操作。分享给大家供大家参考,具体如下:

php查询内存信息,是为了更好的查看内存使用情况,更好的优化代码。

查看当前内存使用情况使用:memory_get_usage()函数。

查看内存使用峰值:memory_get_peak_usage()函数。

<?php
header("Content-Type:text/html;charset=utf-8");
/**
 * 格式化字节大小
 * @param number $size   字节数
 * @param string $delimiter 数字和单位分隔符
 * @return string      格式化后的带单位的大小
 */
function format_bytes($size, $delimiter = '') {
  $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB');
  for ($i = 0; $size  = 1024 && $i < 5; $i++) $size /= 1024;
  return round($size, 2) . $delimiter ."&nbsp;".$units[$i];
}
echo "内存初始状态:".format_bytes(memory_get_usage());
echo "<hr/ ";
echo "开始使用内存<br/ ";
//使用内存
for($i = 0;$i < 100000;$i++){
  $array[] = md5($i);
}
echo "内存状态:".format_bytes(memory_get_usage())."<br/ ";
echo "删除一半的内存<br/ ";
//删除一半的内存
for($i = 0;$i < 100000;$i++){
  unset($array[$i]);
}
echo "最终内存状态:".format_bytes(memory_get_usage());
echo "<hr/ ";
echo "内存峰值状态:".format_bytes(memory_get_peak_usage());

执行结果:

内存初始状态:65.27 KB ——————————————————————————– 开始使用内存 内存状态:12.01 MB 删除一半的内存 最终内存状态:577.52 KB ——————————————————————————– 内存峰值状态:12.01 MB