$t1 = microtime(true);
$m1 = memory_get_usage(true);
echo fixByte($m1). '
';
/*↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓*/
/*↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑*/
$t2 = microtime(true);
$m2 = memory_get_usage(true);
echo '
' . fixByte($m2). '
';
echo '';
echo 'time ' . round(($t2 - $t1), 4) .'
';
echo 'mem ' . fixByte($m2 - $m1) . '
';
/**
* 格式化字节为合适的数值
* @param int $byte 字节数
* @param string $string 格式化的可读性强的字节数
*/
function fixByte($byte, $string = true, $dot_num = 9) {
$ret = array(
'data'=>$byte,
'danwei'=>'Byte',
);
if ($byte < 1024) {
} else if ($byte < 1024*1024) {
$ret['data'] = round($byte / 1024, $dot_num);
$ret['danwei']='K';
} else if ($byte < 1024*1024*1024) {
$ret['data'] = round($byte / (1024*1024), $dot_num);
$ret['danwei']='M';
} else if ($byte < 1024*1024*1024*1024) {
$ret['data'] = round($byte / (1024*1024*1024), $dot_num);
$ret['danwei']='GB';
} else if ($byte < 1024*1024*1024*1024*1024) {
$ret['data'] = round($byte / (1024*1024*1024*1024), $dot_num);
$ret['danwei']='TB';
}
if ($string) {
$ret = $ret['data'] . ' ' . $ret['danwei'];
}
return $ret;
}