freebsd运行php,phpFreeBSD系统探测程序_PHP教程

function sys_freebsd() {

//CPU

if (false === ($res['cpu']['num'] = get_key("hw.ncpu"))) return false;

$res['cpu']['model'] = get_key("hw.model");

//LOAD AVG

if (false === ($res['loadAvg'] = get_key("vm.loadavg"))) return false;

//UPTIME

if (false === ($buf = get_key("kern.boottime"))) return false;

$buf = explode(' ', $buf);

$sys_ticks = time() - intval($buf[3]);

$min = $sys_ticks / 60;

$hours = $min / 60;

$days = floor($hours / 24);

$hours = floor($hours - ($days * 24));

$min = floor($min - ($days * 60 * 24) - ($hours * 60));

if ($days !== 0) $res['uptime'] = $days."天";

if ($hours !== 0) $res['uptime'] .= $hours."小时";

$res['uptime'] .= $min."分钟";

//MEMORY

if (false === ($buf = get_key("hw.physmem"))) return false;

$res['memTotal'] = round($buf/1024/1024, 2);

$buf = explode("n", do_command("vmstat", ""));

$buf = explode(" ", trim($buf[2]));

$res['memFree'] = round($buf[5]/1024, 2);

$res['memUsed'] = ($res['memTotal']-$res['memFree']);

$res['memPercent'] = (floatval($res['memTotal'])!=0)?round($res['memUsed']/$res['memTotal']*100,2):0;

$buf = explode("n", do_command("swapinfo", "-k"));

$buf = $buf[1];

preg_match_all("/([0-9]+)s+([0-9]+)s+([0-9]+)/", $buf, $bufArr);

$res['swapTotal'] = round($bufArr[1][0]/1024, 2);

$res['swapUsed'] = round($bufArr[2][0]/1024, 2);

$res['swapFree'] = round($bufArr[3][0]/1024, 2);

$res['swapPercent'] = (floatval($res['swapTotal'])!=0)?round($res['swapUsed']/$res['swapTotal']*100,2):0;

return $res;

}

//取得参数值 FreeBSD

function get_key($keyName) {

return do_command('sysctl', "-n $keyName");

}

//确定执行文件位置 FreeBSD

function find_command($commandName) {

$path = array('/bin', '/sbin', '/usr/bin', '/usr/sbin', '/usr/local/bin', '/usr/local/sbin');

foreach($path as $p) {

if (@is_executable("$p/$commandName")) return "$p/$commandName";

}

return false;

}

//执行系统命令 FreeBSD

function do_command($commandName, $args) {

$buffer = "";

if (false === ($command = find_command($commandName))) return false;

if ($fp = @popen("$command $args", 'r')) {

while (!@feof($fp)){

$buffer .= @fgets($fp, 4096);

}

return trim($buffer);

}

return false;

}

http://www.bkjia.com/PHPjc/632008.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632008.htmlTechArticlefunction sys_freebsd() { //CPU if (false === ($res['cpu']['num'] = get_key(hw.ncpu))) return false; $res['cpu']['model'] = get_key(hw.model); //LOAD AVG if (false === ($res['loadAv...

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值