站三界导航
首页 PHP代码php计算程序运行时间以及程序占用内存

php计算程序运行时间以及程序占用内存

  • PHP代码
  • 来源:站三界导航
  • 90阅读
  • 2022-06-27

当在调试代码和代码优化时通过计算程序运行时间以及内存开销是很有必要的,通过microtime()函数可以获得时间戳的微秒数,通过memory_get_usage()函数可以获得系统分配的内存大小。

函数讲解

microtime(get_as_float)函数返回当前 Unix 时间戳的微秒数,get_as_float可选,当设置为 TRUE 时,规定函数返回浮点数,FALSE 则返回字符串,默认为 FALSE。

示例:

echo microtime() // 0.99154900 1595469500

echo microtime(true) // 1595469500.9915

memory_get_usage(real_usage)函数返回分配给 PHP 的内存量,单位是字节(byte)。real_usage如果设置为 TRUE 获取系统分配总的内存尺寸,包括未使用的页。如果设置为 FALSE 报告实际使用的内存量,默认为 FALSE。

示例:

echo memory_get_usage(); // 362280

echo memory_get_usage(true); // 2097152

函数应用

/**
 * 程序运行计算
 */
function runExpend($param=array()){
	if(!$param){
		return array('startTime'=>microtime(true),'startRam'=>memory_get_usage());
	}
	return array(
		'times'=>round((microtime(true) - $param['startTime']), 3).'s',
		'ram'=>round((memory_get_usage() - $param['startRam']) / 1024, 2).'kb'
	);
}

// 第一次调用自动设置初始值
$runParam = runExpend();

// 业务程序代码块 - start
for($i=0;$i<100000000;$i++){
	$i;
}
// 业务程序代码块 - end

// 第二次调用并给予第一次的返回值
$runVar = runExpend($runParam);
// 打印结果
print_r($runVar);
打印内容示例:
Array
(
    [times] => 1.659s
    [ram] => 0.29kb
)
本文结束
本文来自投稿,不代表站三界导航立场,如若转载,请注明出处:https://www.zhansanjie.com/article/details/8903.html

版权声明:

1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

2、本站仅提供信息发布平台,不承担相关法律责任。

3、若侵犯您的版权或隐私,请联系本站管理员删除。

4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。

分享
站三界导航
本站声明:本站严格遵守国家相关法律规定,非正规网站一概不予收录。本站所有资料取之于互联网,任何公司或个人参考使用本资料请自辨真伪、后果自负,站三界导航不承担任何责任。在此特别感谢您对站三界导航的支持与厚爱。