php 代码<?php
error_reporting(0);//抑制所有错误信息
@header("content-Type: text/html; charset=utf-8");//语言强制
ob_start();
date_default_timezone_set('Asia/Shanghai');//此句用于消除时间差
$time_start= microtime_float();
/**
*
*/
class ServerInfo{
//服务器参数
public $S = array(
'YourIP',//你的IP
'DomainIP',//服务器域名和IP及进程用户名
'Flag',//服务器标识
'OS',//服务器操作系统具体
'Language',//服务器语言
'Name',//服务器主机名
'Email',//服务器管理员邮箱
'WebEngine',//服务器WEB服务引擎
'WebPort',//web服务端口
'WebPath',//web路径
'ProbePath',//本脚本所在路径
'sTime'//服务器时间
);
public $sysInfo; //系统信息,windows和linux
public $CPU_Use;
public $hd = array(
't',//硬盘总量
'f',//可用
'u',//已用
'PCT',//使用率
);
public $NetWork = array(
'NetWorkName',//网卡名称
'NetOut',//出网总量
'NetInput',//入网总量
'OutSpeed',//出网速度
'InputSpeed'//入网速度
);//网卡流量
function __construct(){
$this->S['YourIP'] = @$_SERVER['REMOTE_ADDR'];
$domain= $this->OS()?$_SERVER['SERVER_ADDR']:@gethostbyname($_SERVER['SERVER_NAME']);
$this->S['DomainIP'] = @get_current_user().' - '.$_SERVER['SERVER_NAME'].'('.$domain.')';
$this->S['Flag'] =empty($this->sysInfo['win_n'])?@php_uname():$this->sysInfo['win_n'];
$os= explode(" ", php_uname());
$oskernel= $this->OS()?$os[2]:$os[1];
$this->S['OS'] =$os[0].'内核版本:'.$oskernel;
$this->S['Language'] =getenv("HTTP_ACCEPT_LANGUAGE");
$this->S['Name'] =$this->OS()?$os[1]:$os[2];
$this->S['Email'] =$_SERVER['SERVER_ADMIN'];
$this->S['WebEngine'] =$_SERVER['SERVER_SOFTWARE'];
$this->S['WebPort'] =$_SERVER['SERVER_PORT'];
$this->S['WebPath'] =$_SERVER['DOCUMENT_ROOT']?str_replace('\\','/',$_SERVER['DOCUMENT_ROOT']):str_replace('\\','/',dirname(__FILE__));
$this->S['ProbePath'] =str_replace('\\','/',__FILE__)?str_replace('\\','/',__FILE__):$_SERVER['SCRIPT_FILENAME'];
$this->S['sTime'] =date('Y-m-d H:i:s');
$this->sysInfo =$this->GetsysInfo();
//var_dump($this->sysInfo);
$CPU1= $this->GetCPUUse();
sleep(1);
$CPU2= $this->GetCPUUse();
$data= $this->GetCPUPercent($CPU1,$CPU2);
$this->CPU_Use =$data['cpu0']['user']."%us, ".$data['cpu0']['sys']."%sy, ".$data['cpu0']['nice']."%ni, ".$data['cpu0']['idle']."%id, ".$data['cpu0']['iowait']."%wa, ".$data['cpu0']['irq']."%irq, ".$data['cpu0']['softirq']."%softirq";
if(!$this->OS())$this->CPU_Use ='目前只支持Linux系统';
$this->hd =$this->GetDisk();
$this->NetWork =$this->GetNetWork();
}
public function OS(){
return DIRECTORY_SEPARATOR=='/'?true:false;
}
public function GetsysInfo(){
switch(PHP_OS) {
case'Linux':
$sysInfo= $this->sys_linux();
break;
case'FreeBSD':
$sysInfo= $this->sys_freebsd();
break;
default:
# code...
break;
}
return $sysInfo;
}
public function sys_linux(){ //linux系统探测
$str= @file("/proc/cpuinfo");//获取CPU信息
if(!$str)return false;
$str= implode("",$str);
@preg_match_all("/model\s+name\s{0,}\:+\s{0,}([\w\s\)\(\@.-]+)([\r\n]+)/s",$str, $model);//CPU 名称
@preg_match_all("/cpu\s+MHz\s{0,}\:+\s{0,}([\d\.]+)[\r\n]+/",$str, $mhz);//CPU频率
@preg_match_all("/cache\s+size\s{0,}\:+\s{0,}([\d\.]+\s{0,}[A-Z]+[\r\n]+)/",$str, $cache);//CPU缓存
@preg_match_all("/bogomips\s{0,}\:+\s{0,}([\d\.]+)[\r\n]+/",$str, $bogomips);//
if(is_array($model[1])){
$cpunum= count($model[1]);
$x1= $cpunum>1?' ×'.$cpunum:'';
$mhz[1][0] =' | 频率:'.$mhz[1][0];
$cache[1][0] =' | 二级缓存:'.$cache[1][0];
$bogomips[1][0] =' | Bogomips:'.$bogomips[1][0];
$res['cpu']['num'] = $cpunum;
$res['cpu']['model'][] = $model[1][0].$mhz[1][0].$cache[1][0].$bogomips[1][0].$x1;
if(is_array($res['cpu']['model']))$res['cpu']['model'] = implode("
", $res['cpu']['model']);
if(is_array($res['cpu']['mhz']))$res['cpu']['mhz'] = implode("
", $res['cpu']['mhz']);
if(is_array($res['cpu']['cache']))$res['cpu']['cache'] = implode("
", $res['cpu']['cache']);
if(is_array($res['cpu']['bogomips']))$res['cpu']['bogomips'] = implode("
", $res['cpu']['bogomips']);
}
//服务器运行时间
$str= @file("/proc/uptime");
if(!$str)return false;
$str= explode(" ", implode("",$str));
$str= trim($str[0]);
$min= $str/60;
$hours= $min/60;
$days= floor($hours/24);
$hours= floor($hours-($days*24));
$min= floor($min-($days*60*24)-($hours*60));
$res['uptime'] =$days."天".$hours."小时".$min."分钟";
//内存
$str= @file("/proc/meminfo");
if(!$str)return false;
$str= implode("",$str);
preg_match_all("/MemTotal\s{0,}\:+\s{0,}([\d\.]+).+?MemFree\s{0,}\:+\s{0,}([\d\.]+).+?Cached\s{0,}\:+\s{0,}([\d\.]+).+?SwapTotal\s{0,}\:+\s{0,}([\d\.]+).+?SwapFree\s{0,}\:+\s{0,}([\d\.]+)/s",$str, $buf);
preg_match_all("/Buffers\s{0,}\:+\s{0,}([\d\.]+)/s",$str, $buffers);
$resmem['memTotal'] =round($buf[1][0]/1024, 2);
$resmem['memFree'] =round($buf[2][0]/1024, 2);
$resmem['memBuffers'] =round($buffers[1][0]/1024, 2);
$resmem['memCached'] =round($buf[3][0]/1024, 2);
$resmem['memUsed'] =$resmem['memTotal']-$resmem['memFree'];
$resmem['memPercent'] = (floatval($resmem['memTotal'])!=0)?round($resmem['memUsed']/$resmem['memTotal']*100,2):0;
$resmem['memRealUsed'] =$resmem['memTotal'] -$resmem['memFree'] -$resmem['memCached'] -$resmem['memBuffers'];//真实内存使用
$resmem['memRealFree'] =$resmem['memTotal'] -$resmem['memRealUsed'];//真实空闲
$resmem['memRealPercent'] = (floatval($resmem['memTotal'])!=0)?round($resmem['memRealUsed']/$resmem['memTotal']*100,2):0;//真实内存使用率
$resmem['memCachedPercent'] = (floatval($resmem['memCached'])!=0)?round($resmem['memCached']/$resmem['memTotal']*100,2):0;//Cached内存使用率
$resmem['swapTotal'] =round($buf[4][0]/1024, 2);
$resmem['swapFree'] =round($buf[5][0]/1024, 2);
$resmem['swapUsed'] =round($resmem['swapTotal']-$resmem['swapFree'], 2);
$resmem['swapPercent'] = (floatval($resmem['swapTotal'])!=0)?round($resmem['swapUsed']/$resmem['swapTotal']*100,2):0;
$resmem= $this->formatmem($resmem);//格式化内存显示单位
$res= array_merge($res,$resmem);
// LOAD AVG 系统负载
$str= @file("/proc/loadavg");
if(!$str)return false;
$str= explode(" ", implode("",$str));
$str= array_chunk($str, 4);
$res['loadAvg'] = implode(" ", $str[0]);
return$res;
}
public function sys_freebsd(){ //freeBSD系统探测
$res['cpu']['num'] = do_command('sysctl','hw.ncpu');//CPU
$res['cpu']['model'] = do_command('sysctl','hw.model');
$res['loadAvg'] = do_command('sysctl','vm.loadavg');//Load AVG 系统负载
//uptime
$buf= do_command('sysctl','kern.boottime');
$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));
$res['uptime'] =$days.'天'.$hours.'小时'.$min.'分钟';
//内存
$buf= do_command('sysctl','hw.physmem');
$resmem['memTotal'] =round($buf/1024/1024, 2);
$str= do_command('sysctl','vm.vmtotal');
preg_match_all("/\nVirtual Memory[\:\s]*\(Total[\:\s]*([\d]+)K[\,\s]*Active[\:\s]*([\d]+)K\)\n/i",$str, $buff, PREG_SET_ORDER);
preg_match_all("/\nReal Memory[\:\s]*\(Total[\:\s]*([\d]+)K[\,\s]*Active[\:\s]*([\d]+)K\)\n/i",$str, $buf, PREG_SET_ORDER);
$resmem['memRealUsed'] =round($buf[0][2]/1024, 2);
$resmem['memCached'] =round($buff[0][2]/1024, 2);
$resmem['memUsed'] =round($buf[0][1]/1024, 2)+$resmem['memCached'];
$resmem['memFree'] =$resmem['memTotal']-$resmem['memUsed'];
$resmem['memPercent'] = (floatval($resmem['memTotal'])!=0)?round($resmem['memUsed']/$resmem['memTotal']*100,2):0;
$resmem['memRealPercent'] = (floatval($resmem['memTotal'])!=0)?round($resmem['memRealUsed']/$resmem['memTotal']*100,2):0;
$resmem= $this->formatmem($resmem);
$res= array_merge($res,$resmem);
return$res;
}
public function do_command($cName,$args){ //执行系统命令FreeBSD
$cName= empty($cName)?'sysctl':timr($cName);
if(empty($args))return false;
$args= '-n '.$args;
$buffers= '';
$command= find_command($cName);
if(!$command)return false;
if($fp= @popen("$command $args",'r')){
while(!@feof($fp)) {
$buffers.= @fgets($fp, 4096);
}
pclose($fp);
return trim($buffers);
}
return false;
}
public function find_command($cName){//确定shell位置
$path= array('/bin','/sbin', '/usr/bin','/usr/sbin', '/usr/local/bin', '/usr/local/sbin');
foreach($pathas as $p) {
if(@is_executable("$p/$commandName"))return "$p/$commandName";
}
return false;
}
public function GetCPUUse(){
$data= @file('/proc/stat');
$cores= array();
foreach($data as $line) {
if(preg_match('/^cpu[0-9]/',$line)){
$info= explode(' ',$line);
$cores[]=array('user'=>$info[1],'nice'=>$info[2],'sys'=> $info[3],'idle'=>$info[4],'iowait'=>$info[5],'irq'=> $info[6],'softirq'=> $info[7]);
}
}
return$cores;
}
public function GetCPUPercent($CPU1,$CPU2){
$num= count($CPU1);
if($num!==count($CPU2)) return '';
$cups= array();
for($i=0;$i
$dif= array();
$dif['user'] =$CPU2[$i]['user'] -$CPU1[$i]['user'];
$dif['nice'] =$CPU2[$i]['nice'] -$CPU1[$i]['nice'];
$dif['sys'] =$CPU2[$i]['sys'] -$CPU1[$i]['sys'];
$dif['idle'] =$CPU2[$i]['idle'] -$CPU1[$i]['idle'];
$dif['iowait'] =$CPU2[$i]['iowait'] -$CPU1[$i]['iowait'];
$dif['irq'] =$CPU2[$i]['irq'] -$CPU1[$i]['irq'];
$dif['softirq'] =$CPU2[$i]['softirq'] -$CPU1[$i]['softirq'];
$total= array_sum($dif);
$cpu= array();
foreach($difas as $x=>$y)
$cpu[$x] =round($y/$total*100, 2);
$cpus['cpu'.$i] = $cpu;
}
return $cpus;
}
public function GetDisk(){ //获取硬盘情况
$d['t'] =round(@disk_total_space(".")/(1024*1024*1024),3);
$d['f'] =round(@disk_free_space(".")/(1024*1024*1024),3);
$d['u'] =$d['t']-$d['f'];
$d['PCT'] = (floatval($d['t'])!=0)?round($d['u']/$d['t']*100,2):0;
return $d;
}
private function formatmem($mem){//格试化内存显示单位
if(!is_array($mem))return $mem;
$tmp= array(
'memTotal','memUsed', 'memFree', 'memPercent',
'memCached','memRealPercent',
'swapTotal','swapUsed', 'swapFree', 'swapPercent'
);
foreach($mem as $k=>$v) {
if(!strpos($k,'Percent')){
$v= $v<1024?$v.' M':$v.' G';
}
$mem[$k] =$v;
}
foreach($tmp as $v) {
$mem[$v] =$mem[$v]?$mem[$v]:0;
}
return $mem;
}
public function GetNetWork(){ //网卡流量
$strs= @file("/proc/net/dev");
$lines= count($strs);
for($i=2;$i
preg_match_all("/([^\s]+):[\s]{0,}(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/",$strs[$i],$info );
$res['OutSpeed'][$i] = $info[10][0];
$res['InputSpeed'][$i] = $info[2][0];
$res['NetOut'][$i] = $this->formatsize($info[10][0]);
$res['NetInput'][$i] = $this->formatsize($info[2][0]);
$res['NetWorkName'][$i] = $info[1][0];
}
return $res;
}
public function formatsize($size) {//单位转换
$danwei=array(' B ',' K ',' M ',' G ',' T ');
$allsize=array();
$i=0;
for($i= 0; $i <5; $i++) {
if(floor($size/pow(1024,$i))==0){break;}
}
for($l= $i-1;$l >=0; $l--) {
$allsize1[$l]=floor($size/pow(1024,$l));
$allsize[$l]=$allsize1[$l]-$allsize1[$l+1]*1024;
}
$len=count($allsize);
for($j= $len-1;$j >=0; $j--) {
$fsize=$fsize.$allsize[$j].$danwei[$j];
}
return $fsize;
}
public function phpexts(){ //以编译模块
$able= get_loaded_extensions();
$str= '';
foreach($able as $key => $value) {
if($key!=0 &&$key%13==0) {
$str.= '
';
}
$str.= "$value ";
}
return $str;
}
public function show($varName){//检测PHP设置参数
switch($result= get_cfg_var($varName)){
case 0:
return '×';
break;
case 1:
return '√';
break;
default:
return$result;
break;
}
}
public function GetDisFuns(){
$disFuns=get_cfg_var("disable_functions");
$str= '';
if(empty($disFuns)){
$str= '×';
}else{
$disFunsarr= explode(',',$disFuns);
foreach($disFunsarr as $key=>$value) {
if($key!=0 &&$key%8==0) {
$str.= '
';
}
$str.= "$value ";
}
}
return $str;
}
public function isfun($funName='',$j=0){// 检测函数支持
if(!$funName || trim($funName) =='' || preg_match('~[^a-z0-9\_]+~i',$funName, $tmp)) return'错误';
if(!$j){
return(function_exists($funName) !== false) ?'√' : '×';
}else{
return(function_exists($funName) !== false) ?'√' : '×';
}
}
public function GetGDVer(){
$strgd= '×';
if(function_exists(gd_info)) {
$gd_info= @gd_info();
$strgd= $gd_info["GD Version"];
}
return $strgd;
}
public function GetZendInfo(){
$zendInfo= array();
$zendInfo['ver'] = zend_version()?zend_version():'×';
$phpv= substr(PHP_VERSION,2,1);
$zendInfo['loader'] =$phpv>2?'ZendGuardLoader[启用]':'Zend Optimizer';
if($phpv>2){
$zendInfo['html'] = get_cfg_var("zend_loader.enable")?'√':'×';
}elseif(function_exists('zend_optimizer_version')){
$zendInfo['html'] = zend_optimizer_version();
}else{
$zendInfo['html']= (get_cfg_var("zend_optimizer.optimization_level") ||
get_cfg_var("zend_extension_manager.optimizer_ts") ||
get_cfg_var("zend.ze1_compatibility_mode") ||
get_cfg_var("zend_extension_ts"))?'√':'×';
}
return $zendInfo;
}
public function GetIconcube(){
$str= '×';
if(extension_loaded('ionCube Loader')){
$ys= ionCube_Loader_version();
$gm= '.'.(int)substr($ys, 3, 2);
$str= $ys.$gm;
}
return $str;
}
public function CHKModule($cName){
if(empty($cName))return '错误';
$str= phpversion($cName);
return empty($str)?'×':$str;
}
public function GetDBVer($dbname){
if(empty($dbname))return '错误';
switch($dbname) {
case'mysql':
if(function_exists("mysql_get_server_info")){
$s= @mysql_get_server_info();
$s= $s ? ' mysql_server 版本:'.$s:'';
$c= @mysql_get_client_info();
$c= $c ? ' mysql_client 版本:'.$c:'';
return $s.$c;
}
return'';
break;
case'sqlite':
if(extension_loaded('sqlite3')){
$sqliteVer= SQLite3::version();
$str= '√';
$str.= 'SQLite3 Ver'.$sqliteVer['versionString'];
}else{
$str= $this->isfun('sqlite_close');
if(strpos($str,'√')!==false){
$str.= ' 版本:'.sqlite_libversion();
}
}
return$str;
break;
default:
return '';
break;
}
}
}
$title= 'PHP服务器信息探针';
$j_version= '1.0.0';
$S = new ServerInfo();
$phpSelf= $_SERVER['PHP_SELF'] ?$_SERVER['PHP_SELF'] :$_SERVER['SCRIPT_NAME'];
$disFuns=get_cfg_var("disable_functions");
$disFuns= strpos('phpinfo', needle)?'×':"PHPINFO";
$strcookies= isset($_COOKIE)?'√': '×';
$strsmtp= get_cfg_var("SMTP")?'√': '×';
$smtpadd= get_cfg_var("SMTP")?get_cfg_var("SMTP"):'×';
//ajax调用实时刷新
if ($_GET['act'] =="rt"){
$arr=array('useSpace'=>$S->hd['u'],
'freeSpace'=>$S->hd['f'],
'hdPercent'=>$S->hd['PCT'],
'barhdPercent'=>$S->hd['PCT'].'%',
'TotalMemory'=>$S->sysInfo['memTotal'],
'UsedMemory'=>$S->sysInfo['memUsed'],
'FreeMemory'=>$S->sysInfo['memFree'],
'CachedMemory'=>$S->sysInfo['memCached'],
'Buffers'=>$S->sysInfo['memBuffers'],
'TotalSwap'=>$S->sysInfo['swapTotal'],
'swapUsed'=>$S->sysInfo['swapUsed'],
'swapFree'=>$S->sysInfo['swapFree'],
'loadAvg'=>$S->sysInfo['loadAvg'],
'uptime'=>$S->sysInfo['uptime'],
'freetime'=>"$freetime",
'bjtime'=>"$bjtime",
'stime'=>$S->S['sTime'],
'cpuuse'=>$S->CPU_Use,
'memRealPercent'=>$S->sysInfo['memRealPercent'],
'memRealUsed'=>$S->sysInfo['memRealUsed'],
'memRealFree'=>$S->sysInfo['memRealFree'],
'memPercent'=>$S->sysInfo['memPercent'].'%',
'memCachedPercent'=>$S->sysInfo['memCachedPercent'],
'barmemCachedPercent'=>$S->sysInfo['memCachedPercent'].'%',
'swapPercent'=>$S->sysInfo['swapPercent'],
'barmemRealPercent'=>$S->sysInfo['memRealPercent'].'%',
'barswapPercent'=>$S->sysInfo['swapPercent'].'%',
'NetOut2'=>$S->NetWork['NetOut'][2],
'NetOut3'=>$S->NetWork['NetOut'][3],
'NetOut4'=>$S->NetWork['NetOut'][4],
'NetOut5'=>$S->NetWork['NetOut'][5],
'NetOut6'=>$S->NetWork['NetOut'][6],
'NetOut7'=>$S->NetWork['NetOut'][7],
'NetOut8'=>$S->NetWork['NetOut'][8],
'NetOut9'=>$S->NetWork['NetOut'][9],
'NetOut10'=>$S->NetWork['NetOut'][10],
'NetInput2'=>$S->NetWork['NetInput'][2],
'NetInput3'=>$S->NetWork['NetInput'][3],
'NetInput4'=>$S->NetWork['NetInput'][4],
'NetInput5'=>$S->NetWork['NetInput'][5],
'NetInput6'=>$S->NetWork['NetInput'][6],
'NetInput7'=>$S->NetWork['NetInput'][7],
'NetInput8'=>$S->NetWork['NetInput'][8],
'NetInput9'=>$S->NetWork['NetInput'][9],
'NetInput10'=>$S->NetWork['NetInput'][10],
'NetOutSpeed2'=>$S->NetWork['OutSpeed'][2],
'NetOutSpeed3'=>$S->NetWork['OutSpeed'][3],
'NetOutSpeed4'=>$S->NetWork['OutSpeed'][4],
'NetOutSpeed5'=>$S->NetWork['OutSpeed'][5],
'NetInputSpeed2'=>$S->NetWork['InputSpeed'][2],
'NetInputSpeed3'=>$S->NetWork['InputSpeed'][3],
'NetInputSpeed4'=>$S->NetWork['InputSpeed'][4],
'NetInputSpeed5'=>$S->NetWork['InputSpeed'][5]
);
$jarr=json_encode($arr);
$_GET['callback'] = htmlspecialchars($_GET['callback']);
echo$_GET['callback'],'(',$jarr,')';
exit;
}
function memory_usage() {
$memory = ( ! function_exists('memory_get_usage')) ?'0' : round(memory_get_usage()/1024/1024, 2).'MB';
return$memory;
}
// 计时
function microtime_float() {
$mtime= microtime();
$mtime= explode(' ',$mtime);
return$mtime[1] + $mtime[0];
}
?>
html 代码html>
<?php echo $title ;?>* {font-family:"Microsoft Yahei",Tahoma, Arial; }
body{text-align: center; margin: 0 auto; padding: 0; background-color:#fafafa;font-size:12px;font-family:Tahoma, Arial}
h1 {font-size: 26px; padding: 0; margin: 0; color: #333333; font-family:"Lucida Sans Unicode","Lucida Grande",sans-serif;}
h1 small {font-size: 11px; font-family: Tahoma; font-weight: bold; }
a{color: #666; text-decoration:none;}
a.black{color: #000000; text-decoration:none;}
.w_logo{height:25px;text-align:center;color:#333;font-size: 15px; width:13%; }
.j_top{display:table;font-weight:bold;background:#dedede;color:#626262;width: 100%;text-align: left; height: 25px; line-height: 25px;
box-shadow: 1px 1px 1px #CCC;
-moz-box-shadow: 1px 1px 1px #CCC;
-webkit-box-shadow: 1px 1px 1px #CCC;
-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=2, Direction=135, Color='#CCCCCC')";}
.j_top a{text-align:center; width:8.7%; display: table-cell; padding: 5px 0px;}
.j_top a:hover{background:#dadada;}
.con{width: 90%;margin: 10px auto;}
.con .j_top{ padding: 0px 10px;}
.j_tb{display:table;width:100%;padding:5px 10px;border-bottom:1px solid #CCCCCC;text-align:left;}
.j_td{display:table-cell;}
.j_td_t{width:120px;}
.j_td_c{width:50%;}
.j_td_t1{width:320px;}
.w_foot{height:25px;text-align:center; background:#dedede;}
input{padding: 2px; background: #FFFFFF; border-top:1px solid #666666; border-left:1px solid #666666; border-right:1px solid #CCCCCC; border-bottom:1px solid #CCCCCC; font-size:12px}
input.btn{font-weight: bold; height: 20px; line-height: 20px; padding: 0 6px; color:#666666; background: #f2f2f2; border:1px solid #999;font-size:12px}
.bar {border:1px solid #999999; background:#FFFFFF; height:5px; font-size:2px; width:89%; margin:2px 0 5px 0;padding:1px; overflow: hidden;}
.bar_1 {border:1px dotted #999999; background:#FFFFFF; height:5px; font-size:2px; width:89%; margin:2px 0 5px 0;padding:1px; overflow: hidden;}
.barli_red{background:#ff6600; height:5px; margin:0px; padding:0;}
.barli_blue{background:#0099FF; height:5px; margin:0px; padding:0;}
.barli_green{background:#36b52a; height:5px; margin:0px; padding:0;}
.barli_black{background:#333; height:5px; margin:0px; padding:0;}
.barli_1{background:#999999; height:5px; margin:0px; padding:0;}
.barli{background:#36b52a; height:5px; margin:0px; padding:0;}
#page {width: 100%; padding: 0 auto; margin: 0 auto; text-align: left;}
#header{position:relative; padding:5px;}
$(document).ready(function(){getJSONData();});
var OutSpeed2==floor($S->NetWork['OutSpeed'][2]);?>;
var OutSpeed3==floor($S->NetWork['OutSpeed'][3]);?>;
var OutSpeed4==floor($S->NetWork['OutSpeed'][4]);?>;
var OutSpeed5==floor($S->NetWork['OutSpeed'][5]);?>;
var InputSpeed2==floor($S->NetWork['InputSpeed'][2]);?>;
var InputSpeed3==floor($S->NetWork['InputSpeed'][3]);?>;
var InputSpeed4==floor($S->NetWork['InputSpeed'][4]);?>;
var InputSpeed5==floor($S->NetWork['InputSpeed'][5]);?>;
function getJSONData(){
setTimeout("getJSONData()", 1000);
$.getJSON('?act=rt&callback=?', displayData);
}
function ForDight(Dight,How){
if(Dight<0){
var Last=0+"B/s";
}elseif (Dight<1024){
var Last=Math.round(Dight*Math.pow(10,How))/Math.pow(10,How)+"B/s";
}elseif (Dight<1048576){
Dight=Dight/1024;
var Last=Math.round(Dight*Math.pow(10,How))/Math.pow(10,How)+"K/s";
}else{
Dight=Dight/1048576;
var Last=Math.round(Dight*Math.pow(10,How))/Math.pow(10,How)+"M/s";
}
return Last;
}
function displayData(dataJSON){
$("#useSpace").html(dataJSON.useSpace);
$("#freeSpace").html(dataJSON.freeSpace);
$("#hdPercent").html(dataJSON.hdPercent);
$("#barhdPercent").width(dataJSON.barhdPercent);
$("#TotalMemory").html(dataJSON.TotalMemory);
$("#UsedMemory").html(dataJSON.UsedMemory);
$("#FreeMemory").html(dataJSON.FreeMemory);
$("#CachedMemory").html(dataJSON.CachedMemory);
$("#Buffers").html(dataJSON.Buffers);
$("#TotalSwap").html(dataJSON.TotalSwap);
$("#swapUsed").html(dataJSON.swapUsed);
$("#swapFree").html(dataJSON.swapFree);
$("#swapPercent").html(dataJSON.swapPercent);
$("#loadAvg").html(dataJSON.loadAvg);
$("#uptime").html(dataJSON.uptime);
$("#freetime").html(dataJSON.freetime);
$("#stime").html(dataJSON.stime);
$("#bjtime").html(dataJSON.bjtime);
$("#cpuuse").html(dataJSON.cpuuse);
$("#memRealUsed").html(dataJSON.memRealUsed);
$("#memRealFree").html(dataJSON.memRealFree);
$("#memRealPercent").html(dataJSON.memRealPercent);
$("#memPercent").html(dataJSON.memPercent);
$("#barmemPercent").width(dataJSON.memPercent);
$("#barmemRealPercent").width(dataJSON.barmemRealPercent);
$("#memCachedPercent").html(dataJSON.memCachedPercent);
$("#barmemCachedPercent").width(dataJSON.barmemCachedPercent);
$("#barswapPercent").width(dataJSON.barswapPercent);
$("#NetOut2").html(dataJSON.NetOut2);
$("#NetOut3").html(dataJSON.NetOut3);
$("#NetOut4").html(dataJSON.NetOut4);
$("#NetOut5").html(dataJSON.NetOut5);
$("#NetOut6").html(dataJSON.NetOut6);
$("#NetOut7").html(dataJSON.NetOut7);
$("#NetOut8").html(dataJSON.NetOut8);
$("#NetOut9").html(dataJSON.NetOut9);
$("#NetOut10").html(dataJSON.NetOut10);
$("#NetInput2").html(dataJSON.NetInput2);
$("#NetInput3").html(dataJSON.NetInput3);
$("#NetInput4").html(dataJSON.NetInput4);
$("#NetInput5").html(dataJSON.NetInput5);
$("#NetInput6").html(dataJSON.NetInput6);
$("#NetInput7").html(dataJSON.NetInput7);
$("#NetInput8").html(dataJSON.NetInput8);
$("#NetInput9").html(dataJSON.NetInput9);
$("#NetInput10").html(dataJSON.NetInput10);
$("#NetOutSpeed2").html(ForDight((dataJSON.NetOutSpeed2-OutSpeed2),3)); OutSpeed2=dataJSON.NetOutSpeed2;
$("#NetOutSpeed3").html(ForDight((dataJSON.NetOutSpeed3-OutSpeed3),3)); OutSpeed3=dataJSON.NetOutSpeed3;
$("#NetOutSpeed4").html(ForDight((dataJSON.NetOutSpeed4-OutSpeed4),3)); OutSpeed4=dataJSON.NetOutSpeed4;
$("#NetOutSpeed5").html(ForDight((dataJSON.NetOutSpeed5-OutSpeed5),3)); OutSpeed5=dataJSON.NetOutSpeed5;
$("#NetInputSpeed2").html(ForDight((dataJSON.NetInputSpeed2-InputSpeed2),3)); InputSpeed2=dataJSON.NetInputSpeed2;
$("#NetInputSpeed3").html(ForDight((dataJSON.NetInputSpeed3-InputSpeed3),3)); InputSpeed3=dataJSON.NetInputSpeed3;
$("#NetInputSpeed4").html(ForDight((dataJSON.NetInputSpeed4-InputSpeed4),3)); InputSpeed4=dataJSON.NetInputSpeed4;
$("#NetInputSpeed5").html(ForDight((dataJSON.NetInputSpeed5-InputSpeed5),3)); InputSpeed5=dataJSON.NetInputSpeed5;
}
组件支持
第三方组件
数据库支持
性能检测
网速检测
MySQL检测
函数检测
邮件检测
总空间 =$S->hd['t'];?> G,已用 =$S->hd['u'];?> G,
空闲 =$S->hd['f'];?> G,
使用率 =$S->hd['PCT'];?>%
物理内存:共=$S->sysInfo['memTotal'];?>
, 已用=$S->sysInfo['memUsed']?>
, 空闲=$S->sysInfo['memFree'];?>
, 使用率=$S->sysInfo['memPercent'];?>
<?if ($S->sysInfo['memCached']){?>
Cache化内存为 =$S->sysInfo['memCached'];?>
, 使用率=$S->sysInfo['memCachedPercent'];?>% |
Buffers缓冲为 =$S->sysInfo['memBuffers'];?>
真实内存使用=$S->sysInfo['memRealUsed'];?>
, 真实内存空闲=$S->sysInfo['memRealFree'];?>
, 使用率=$S->sysInfo['memRealPercent'];?>%
}?>
<?if ($S->sysInfo['swapTotal']) {?>
SWAP区:共=$S->sysInfo['swapTotal'];?>
, 已使用=$S->sysInfo['swapUsed'];?>
, 空闲=$S->sysInfo['swapFree'];?>
, 使用率=$S->sysInfo['swapPercent'];?>%
}?>
$netnum= count($S->NetWork);
for($i=2;$i
=$S->NetWork['NetWorkName'][$i]?>
入网:">=$S->NetWork['NetInput'][$i];?>
实时:">0B/s
出网: ">=$S->NetWork['NetOut'][$i];?>
实时: ">0B/s
}?>
默认支持函数(enable_functions):?act=Function'target='_blank' class='static'>请点这里查看详细!
处理结果: 图为 linux 系统下结果,windows CPU 参数获取不到 …