|
Posted by Andrι Medeiros on 07/23/05 16:25
First of all, you want to have the two values in seperate variables.
After reading the contents from the file, do something like:
-----------------------------------------8<---------------------------------------------
function parseUptimeSeconds( $seconds ) {
$resultArray = Array( 'weeks' => 0, 'days' => 0, 'hours' => 0,
'minutes' => 0, 'seconds' => 0);
// check weeks
while( $seconds > 604800 ) {
$resultArray['weeks']++;
$seconds -= 604800;
}
// check days
while( $seconds > 86400) {
$resultArray['days']++;
$seconds -= 86400;
}
// check hours
while( $seconds > 3600) {
$resultArray['hours']++;
$seconds -= 3600;
}
// check minutes
while( $seconds > 60) {
$resultArray['minutes']++;
$seconds -= 60;
}
$resultArray['seconds'] = $seconds;
return( $resultArray );
}
// separate both values
list( $uptimeSeconds, $idleSeconds ) = explode( ' ', $lineReadFromFile );
$uptimeElements = parseUptimeSeconds( $uptimeSeconds );
$idleElements = parseUptimeSeconds( $idleSeconds );
-----------------------------------------8<---------------------------------------------
I know there might be a more efficient way of doing this, like using
the modulus operator, but hey :)
On 7/23/05, Ramil Sagum <ramil.sagum@gmail.com> wrote:
> On 7/23/05, Vidyut Luther <vid@phpcult.com> wrote:
> > Ok,
> > If I use the file_get_contents.. how do I actually parse the
> > contents on /proc/uptime
> > cat /proc/uptime
> > 1400293.13 1317047.64
>
>
> The first number is the total uptime in seconds, the second number is
> the total idle time.
>
> --
> ----
>
>
>
> ramil
> http://ramil.sagum.net/
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
Navigation:
[Reply to this message]
|