从PHP脚本我需要获得最后的系统启动时间,最好是UNIX时间戳格式。
是否有任何在启动时创建或修改的文件?我可以读取文件的修改时间。
系统类型为CentOS。
答案 0 :(得分:7)
的/ proc /正常运行时间
此文件包含两个数字:系统的正常运行时间(秒),以及在空闲进程中花费的时间(秒)。
<?php
function get_boottime() {
$tmp = explode(' ', file_get_contents('/proc/uptime'));
return time() - intval($tmp[0]);
}
echo get_boottime() . "\n";
答案 1 :(得分:2)
试试这个:
方法1
<?php
$uptime = trim( shell_exec( 'uptime' ) );
// output is 04:47:32 up 187 days, 5:03, 1 user, load average: 0.55, 0.55, 0.54
$uptime = explode( ',', $uptime );
$uptime = explode( ' ', $uptime[0] );
$uptime = $uptime[2] . ' ' . $uptime[3]; // 187 days
?>
方法2
<?php
$uptime = trim( file_get_contents( '/proc/uptime' ) );
$uptime = explode( ' ', $uptime[0] );
echo $uptime[0];//uptime in seconds
?>
希望它有所帮助。
答案 2 :(得分:2)
who -b # in command-line
为您提供上次启动时间(http://www.kernelhardware.org/find-last-reboot-time-and-date-on-linux/)
exec ( $command , $output ); // in PHP
执行shell命令
strtotime(); // in PHP
将任何英文文本日期时间描述解析为Unix时间戳
因此,这将为您提供Linux系统上次启动时间:
// in PHP
exec('who -b',$bootTime);//where $bootTime is an array, each line returned by the command is an element of the array
$result = strtotime($bootTime[1]);