您好,欢迎访问一九零五行业门户网

php在windows内怎么取得cpu内存实时使用率

这次给大家带来php在windows内怎么取得cpu内存实时使用率,php在windows内取得cpu内存实时使用率的注意事项有哪些,下面就是实战案例,一起来看一下。
网上虽然搜 php cup 内存 使用率 这一类关键字出来的文章一大把,但大都是在linux环境下,windows下只有提出靠cmd语句实现的观点,但少有实际直接可行的代码,辗转试了一遍 wmic , systeminfo 各种并不熟稔的cmd命令,并没有找到可行的方案,最终通过百度知道 的一篇答案找到利用vbs获取的实现方式,稍加改善,可以在windows环境下直接使用。
类代码
class systeminfowindows {  /**   * 判断指定路径下指定文件是否存在,如不存在则创建   * @param string $filename 文件名   * @param string $content 文件内容   * @return string 返回文件路径   */  private function getfilepath($filename, $content)  {   $path = dirname(file) . \\$filename;   if (!file_exists($path)) {    file_put_contents($path, $content);   }   return $path;  }  /**   * 获得cpu使用率vbs文件生成函数   * @return string 返回vbs文件路径   */  private function getcupusagevbspath()  {   return $this->getfilepath(    'cpu_usage.vbs',    on error resume next     set objproc = getobject(\winmgmts:\\\\.\\root\cimv2:win32_processor='cpu0'\)     wscript.echo(objproc.loadpercentage)   );  }  /**   * 获得总内存及可用物理内存json vbs文件生成函数   * @return string 返回vbs文件路径   */  private function getmemoryusagevbspath()  {   return $this->getfilepath(    'memory_usage.vbs',    on error resume next     set objwmi = getobject(\winmgmts:\\\\.\\root\cimv2\)     set colos = objwmi.instancesof(\win32_operatingsystem\)     for each objos in colos      wscript.echo(\{\\totalvisiblememorysize\\:\ & objos.totalvisiblememorysize & \,\\freephysicalmemory\\:\ & objos.freephysicalmemory & \}\)     next   );  }  /**   * 获得cpu使用率   * @return number   */  public function getcpuusage()  {   $path = $this->getcupusagevbspath();   exec(cscript -nologo $path, $usage);   return $usage[0];  }  /**   * 获得内存使用率数组   * @return array   */  public function getmemoryusage()  {   $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 = new systeminfowindows(); $cpu = $info->getcpuusage(); $memory = $info->getmemoryusage(); echo 当前系统cpu使用率:{$cpu}%,内存使用率{$memory['usage']}%;
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
php+ajax无刷新文件上传实现步骤详解
php实现多维数组排序算法有哪些方式
以上就是php在windows内怎么取得cpu内存实时使用率的详细内容。
其它类似信息

推荐信息