扣丁学堂PHP培训

扣丁学堂PHP培训简述PHP在windows环境下获得cpu内存

2018-08-08  本文已影响14人  994d14631d16

本篇文章扣丁学堂PHP培训小编给大家分享一下PHP在windows环境下获得cpu内存实时使用率,对PHP开发技术或者是该问题感兴趣的小伙伴就随小编一起来了解一下吧。

扣丁学堂PHP培训

网上虽然搜PHPCUP内存使用率这一类关键字出来的文章一大把,但大都是在Linux环境下,windows下只有提出靠cmd语句实现的观点,但少有实际直接可行的代码,下面看一下本篇文章的详细介绍吧。

类代码:

classSystemInfoWindows

{

/**

*判断指定路径下指定文件是否存在,如不存在则创建

*@paramstring$fileName文件名

*@paramstring$content文件内容

*@returnstring返回文件路径

*/

privatefunctiongetFilePath($fileName,$content)

{

$path=dirname(__FILE__)."\\$fileName";

if(!file_exists($path)){

file_put_contents($path,$content);

}

return$path;

}

/**

*获得cpu使用率vbs文件生成函数

*@returnstring返回vbs文件路径

*/

privatefunctiongetCupUsageVbsPath()

{

return$this->getFilePath(

'cpu_usage.vbs',

"OnErrorResumeNext

SetobjProc=GetObject(\"winmgmts:\\\\.\\root\cimv2:win32_processor='cpu0'\")

WScript.Echo(objProc.LoadPercentage)"

);

}

/**

*获得总内存及可用物理内存JSONvbs文件生成函数

*@returnstring返回vbs文件路径

*/

privatefunctiongetMemoryUsageVbsPath()

{

return$this->getFilePath(

'memory_usage.vbs',

"OnErrorResumeNext

SetobjWMI=GetObject(\"winmgmts:\\\\.\\root\cimv2\")

SetcolOS=objWMI.InstancesOf(\"Win32_OperatingSystem\")

ForEachobjOSincolOS

Wscript.Echo(\"{\"\"TotalVisibleMemorySize\"\":\"&objOS.TotalVisibleMemorySize&\",\"\"FreePhysicalMemory\"\":\"&objOS.FreePhysicalMemory&\"}\")

Next"

);

}

/**

*获得CPU使用率

*@returnNumber

*/

publicfunctiongetCpuUsage()

{

$path=$this->getCupUsageVbsPath();

exec("cscript-nologo$path",$usage);

return$usage[0];

}

/**

*获得内存使用率数组

*@returnarray

*/

publicfunctiongetMemoryUsage()

{

$path=$this->getMemoryUsageVbsPath();

exec("cscript-nologo$path",$usage);

$memory=json_decode($usage[0],true);

$memory['usage']=Round((($memory['TotalVisibleMemorySize']-$memory['FreePhysicalMemory'])/$memory['TotalVisibleMemorySize'])*100);

return$memory;

}

}

调用方式:

$info=newSystemInfoWindows();

$cpu=$info->getCpuUsage();

$memory=$info->getMemoryUsage();

echo"当前系统CPU使用率:{$cpu}%,内存使用率{$memory['usage']}%";

以上就是扣丁学堂PHP培训小编给大家分享的PHP在windows环境下获得cpu内存实时使用率,希望对小伙伴们有所帮助,想要了解更多关于PHP方面内容的小伙伴可以登录扣丁学堂官网咨询。扣丁学堂不仅有专业的PHP培训班供大家报名学习,还有大量的PHP视频教程供学员免费观看学习,想要学好PHP开发技术的小伙伴抓紧时间行动吧。

上一篇下一篇

猜你喜欢

热点阅读