Home >Backend Development >PHP Tutorial >Share a piece of php code to get the status of the linux server_PHP tutorial

Share a piece of php code to get the status of the linux server_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:29:22973browse

Simple PHP code to get the Linux server status, not much to say - just go to the function:

Copy code The code is as follows:

function get_used_status(){
$fp = popen('top -b - n 2 | grep -E "^(Cpu|Mem|Tasks)"',"r");//Get the system cpu and memory usage at a certain moment
$rs = "";
while(! feof($fp)){
$rs .= fread($fp,1024);
}
pclose($fp);
$sys_info = explode("n",$rs) ;

$tast_info = explode(",",$sys_info[3]);//Process array
$cpu_info = explode(",",$sys_info[4]); //CPU occupancy array
$mem_info = explode(",",$sys_info[5]); //Memory occupancy array

//Number of running processes
$tast_running = trim(trim($tast_info[1],'running'));
//CPU usage
$cpu_usage = trim(trim( $cpu_info[0],'Cpu(s): '),'%us'); //Percent

//Memory usage
$mem_total = trim(trim($mem_info[0] ,'Mem: '),'k total');
$mem_used = trim($mem_info[1],'k used');
$mem_usage = round(100*intval($mem_used)/intval ($mem_total),2); //Percentage

/*Hard disk usage begin*/
$fp = popen('df -lh | grep -E "^(/)"',"r");
$rs = fread($fp ,1024);
pclose($fp);
$rs = preg_replace("/s{2,}/",' ',$rs); //Replace multiple spaces with "_"
$hd = explode(" ",$rs);
$hd_avail = trim($hd[3],'G'); //Disk available space size unit G
$hd_usage = trim($ hd[4],'%'); //Mount point percentage
//print_r($hd);
/*Hard disk usage end*/

//Detection time
$fp = popen("date +"%Y-%m-%d %H:%M"","r");
$rs = fread($fp,1024);
pclose( $fp);
$detection_time = trim($rs);

/*Get IP address begin*/
/*
$fp = popen('ifconfig eth0 | grep -E "(inet addr)"','r');
$rs = fread($fp,1024);
pclose($fp);
$rs = preg_replace("/s{2, }/",' ',trim($rs)); //Replace multiple spaces with "_"
$rs = explode(" ",$rs);
$ip = trim($rs [1],'addr:');
*/
/*Get IP addressend*/
/*
$file_name = "/tmp/data.txt"; // Absolute path : homedata.dat
$file_pointer = fopen($file_name, "a+"); // "w" is a mode, see below for details
fwrite($file_pointer,$ip); // First put the file Cut to 0 bytes, then write
fclose($file_pointer); // End
*/

return array('cpu_usage'=>$cpu_usage,'mem_usage'= >$mem_usage,'hd_avail'=>$hd_avail,'hd_usage'=>$hd_usage,'tast_running'=>$tast_running,'detection_time'=>$detection_time);
}

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/777080.htmlTechArticleSimple PHP code to get the Linux server status, not much to say - go directly to the function: Copy the code and the code is as follows: function get_used_status(){ $fp = popen('top -b -n 2 | grep -E "^(Cpu|Mem|...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn