使用 php 获取服务器内存

2024-04-14

有没有办法用 php 知道服务器(linux 发行版)中的可用内存(不使用 linux 命令)?

编辑:抱歉,目标是了解特定服务器的服务器/虚拟机中可用的内存(即使该内存是共享的)。


如果你知道这段代码只能在Linux下运行,你可以使用特殊的/proc/meminfo文件来获取有关系统虚拟内存子系统的信息。该文件的格式如下:

MemTotal:       255908 kB
MemFree:         69936 kB
Buffers:         15812 kB
Cached:         115124 kB
SwapCached:          0 kB
Active:          92700 kB
Inactive:        63792 kB
...

第一行,MemTotal: ...,包含机器中的物理 RAM 量,减去内核为其自身使用保留的空间。这是我所知道的获取 Linux 系统上可用内存的简单报告的最佳方法。您应该能够通过类似以下代码的方式提取它:

<?php
  $fh = fopen('/proc/meminfo','r');
  $mem = 0;
  while ($line = fgets($fh)) {
    $pieces = array();
    if (preg_match('/^MemTotal:\s+(\d+)\skB$/', $line, $pieces)) {
      $mem = $pieces[1];
      break;
    }
  }
  fclose($fh);

  echo "$mem kB RAM found"; ?>

(请注意:此代码可能需要针对您的环境进行一些调整。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 php 获取服务器内存 的相关文章

随机推荐

  • 在 MySQL 中的 IN () 中使用逗号分隔的字符串

    如果用户定义的变量 x是一串逗号分隔的数字 例如 1 2 4 有没有办法在IN 功能 具体来说 SET x 1 2 4 SELECT FROM t WHERE c IN x 不选择 t 中 c 等于 1 或 2 或 4 的行 您不能直接使用
  • 防止 AngularJS 中重复的 ui-view

    情况 我的模板中有一个 ui view 组件 div div 我为此视图定义了状态 A 和 B 问题 When I go from state A gt B the rendered DOM looks like this 我在屏幕上看到了
  • 当观察者希望观察不同的项目时实现观察者模式

    下面 当观察者希望观察不同的项目时 我尝试为观察者模式编写 sudo 代码 忽略语法错误 我想知道这是否是实现这一点的正确方法 如果没有 请提出更好的方法 Used by the subject for keeping a track of
  • 如何控制 tkinter 组合框选择突出显示

    我写了一个小型法拉转换器来学习 GUI 编程 它效果很好 看起来不错 唯一的问题是我似乎不知道如何控制我的屏幕上出现的这种奇怪的突出显示ttk Combobox选择 我确实用过ttk Style 但它只改变了颜色ttk Combobox背景
  • 将环境变量传递给ant任务,不带ANT_OPTS

    我正在调用 Jasper ant 任务 并且我想设置org apache jasper compiler Parser STRICT QUOTE ESCAPING环境变量 我可以将 ANT OPTS 设置为 Dorg apache jasp
  • 自动释放或不自动释放

    在核心数据编程指南中的以下代码示例中 创建了 NSFetchRequest 使用 autorelease 而 NSSortDescriptor 不是使用 autorelease 创建的 为什么 NSSortDescriptor 不使用 au
  • 带或不带句柄的嵌套 classdef? [复制]

    这个问题在这里已经有答案了 我试图在 Matlab 中使用可更新的对象 类 和嵌套类 我观察到一种似乎是由于句柄状态引起的行为 我写了2个类testA and testB testB是一个调用该类的主类testA作为财产 classdef
  • 在 C++ 中对命令行参数进行排序

    我想对命令行参数数组进行排序 所有参数都是整数 这是我的代码 但它不起作用 include
  • 如何检测 Android 上的 SSL 固定

    我已经安装并配置了sslsplit并生成根证书 并将其添加到手机 Android 中 如何检测 SSL 固定 当您在移动设备和与之通信的服务器之间放置代理时 使用 SSL 证书固定或公钥固定的应用程序应该无法与服务器通信 因为它将接收 ss
  • 重写 has_many 关联 getter

    一个用户可以拥有多辆车 User has many cars Car belongs to user 每次我打电话 user cars它返回的列表cars按默认搜索顺序 如果我希望关联在某个任意字段上排序 我可以这样做 class User
  • Android 保存并从 Sqlite 数据库获取图像

    亲爱的 Android 如何保存图像并从我使用 Android Studio 的 Sqlite 数据库获取图像 可能为时已晚 但对未来的读者有用 import android content Context import android d
  • 删除 ionic 3 中的滑动手势

    我想创建一个离子删除滑动手势 但它似乎不起作用 This is my home page i called it myPage html
  • ASP.NET MVC - 值类型的自定义验证消息

    当我使用 UpdateModel 或 TryUpdateModel 时 MVC 框架足够智能 可以知道您是否尝试将 null 传递到值类型中 例如 用户忘记填写所需的生日字段 不幸的是 我不知道如何覆盖默认消息 需要一个值 在摘要中输入更有
  • 迄今为止的 Groovy 字符串

    我正在用 Groovy 编码 我目前正在尝试将我拥有的字符串转换为日期 而不必做任何过于繁琐的事情 String theDate 28 09 2010 16 02 43 def newdate new Date parse d M yyyy
  • 从 SHA256 解密

    我有将字符串加密为 sha256 并紧邻 base64 的代码 public static string Sha256encrypt string phrase UTF8Encoding encoder new UTF8Encoding S
  • 如何禁用可创建的反应选择组件?

    我不知道使用什么道具来禁用可创建的 React select 组件 它只是丢失了吗 我尝试了常规的 isDisabled 属性但没有成功
  • 查找两个数字之间素数个数的快速算法

    我的问题简化为找到两个给定数字之间的素数数量 我的范围可以大到1 to 1000 因此我需要一些数学优化 显然 在这种情况下 筛法会太慢 是否有任何可以应用的数学优化 例如 采用这个大空间的较小子集并对其余数字进行推断 P S 看起来我可能
  • 如何使用 PHP 检查 MySQL 表是否存在?

    理论上听起来很简单 我已经做了相当多的研究 但很难弄清楚这一点 如何检查 MySQL 表是否存在以及它是否执行某些操作 我想一个简单的 php if else 语句可以解决这个问题 有没有办法做到这一点 这就是我对 cwallenpoole
  • 使用 ICertAdmin2::RevokeCertificate 方法撤销 C# 中的证书

    如何将 certadm dll 导入托管项目并使用 RevokeCertificate 方法 我尝试将其添加为引用 但出现错误 因为它不是程序集或 COM 对象 有任何想法吗 UPDATE 我已经尝试过了regsvr32 c certadm
  • 使用 php 获取服务器内存

    有没有办法用 php 知道服务器 linux 发行版 中的可用内存 不使用 linux 命令 编辑 抱歉 目标是了解特定服务器的服务器 虚拟机中可用的内存 即使该内存是共享的 如果你知道这段代码只能在Linux下运行 你可以使用特殊的 pr