介绍
PHP 是一种流行的开源脚本语言,广泛用于 Web 开发。本文将介绍如何使用 PHP 在 Windows 上获取系统启动时间,并计算自系统启动以来的秒数。
获取系统启动时间
想要获取系统的启动时间,可以使用命令行工具 `systeminfo`。该工具能够提供关于计算机系统的详细信息,其中包括计算机的启动时间。下面是使用 PHP 调用 `systeminfo` 命令并获取启动时间的代码:
function get_system_boot_time() {
$output = shell_exec('systeminfo');
if (preg_match('/System Boot Time:\s+(.*)\r\n/', $output, $matches)) {
return strtotime($matches[1]);
}
}
这段代码使用 `shell_exec` 函数来执行 `systeminfo` 命令,并通过正则表达式来从输出中提取启动时间。然后,使用 `strtotime` 函数将时间转换为 Unix 时间戳。
计算已启动秒数
有了系统启动时间,我们可以轻松地计算自启动以来的秒数。下面是计算秒数的代码:
function seconds_since_boot() {
$boot_time = get_system_boot_time();
if ($boot_time) {
return time() - $boot_time;
}
}
这个函数首先使用 `get_system_boot_time` 函数获取系统启动时间,然后使用 `time` 函数获取当前时间,并计算二者之间的差值。
完整代码
下面是完整的代码:
function get_system_boot_time() {
$output = shell_exec('systeminfo');
if (preg_match('/System Boot Time:\s+(.*)\r\n/', $output, $matches)) {
return strtotime($matches[1]);
}
}
function seconds_since_boot() {
$boot_time = get_system_boot_time();
if ($boot_time) {
return time() - $boot_time;
}
}
echo 'System uptime: '. seconds_since_boot() .' seconds';
该代码通过调用 `seconds_since_boot` 函数来计算自启动以来的秒数,并输出结果。
需要注意的是,本文介绍的获取系统启动时间的方法仅适用于 Windows 操作系统。