Retrieving System Information With patSysinfo - Up and at 'Em
(Page 4 of 9 )
How about finding out how long it's been since the system's last reboot? Well, patSysinfo allows you to duplicate the "uptime" command with its getUptime() function. Take a look:
<?php
// include class
include("patSysinfo.php");
// instantiate object
$sys = new patSysinfo();
// get uptime
$uptime = $sys->getUptime();
// output values
echo "Last reboot was " . $uptime['days'] . " days, " . $uptime['hours'] .
" hours and " . $uptime['mins'] . " minutes ago";
? >
The getUptime() method returns the time since the system's last reboot as an associative array with keys "days", "mins" and "hours". This can then easily be formatted into a readable string, as above. Here's the output:
Last reboot was 0 days, 1 hours and 43 minutes ago
Want to know a little bit more about the hardware and software running on the system? Take a look at the getKernelVersion() and getCpu() functions, which return the current kernel version and processor details respectively.
<?php
// include class
include("patSysinfo.php");
// instantiate object
$sys = new patSysinfo();
// get kernel version
$kv = $sys->getKernelVersion();
// get processor information
$cpuArray = $sys->getCpu();
// extract model, speed, cache etc
$model = $cpuArray[0]['model'];
$speed = $cpuArray[0]['mhz'];
$cache = $cpuArray[0]['cache'];
$mips = $cpuArray[0]['bogomips'];
// output values
echo "Kernel $kv running on a $model at $speed MhZ ($cache cache, $mips bogomips)";
? >
The getCpu() function, in particular, deserves closer attention. This function returns an array, each element of which is itself an associative array representing one of the processors in the CPU (most often, you will have a single-processor CPU and therefore only one element in this array). The associative array for each processor itself contains information on the processor name, clock speed, cache size and other relevant values.
Here's the output:
Kernel 2.4.20 running on a Pentium III (Katmai) at 451.03 MhZ (512 KB cache, 897.84 bogomips)
Next: Carrying the Load >>
More PHP Articles
More By icarus, (c) Melonfire