Advertisement
Guest User

Untitled

a guest
May 24th, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.22 KB | None | 0 0
  1.     public function meminfo()
  2.     {
  3.         $total = 0;
  4.         $free = 0;
  5.         $memInfo = '/proc/meminfo';
  6.         $totalIsFound = false;
  7.         $freeIsFound = false;
  8.  
  9.         if (file_exists($memInfo)) {
  10.             $handle = @fopen($memInfo, 'r');
  11.  
  12.             if ($handle) {
  13.                 while (!feof($handle)) {
  14.                     $buffer = fgets($handle, 4096);
  15.  
  16.                     if (!$totalIsFound && strpos($buffer, 'MemTotal:') !== false) {
  17.                         sscanf($buffer, 'MemTotal: %d', $total);
  18.                         $totalIsFound = true;
  19.                         continue;
  20.                     }
  21.  
  22.                     if (!$freeIsFound && strpos($buffer, 'MemFree:') !== false) {
  23.                         sscanf($buffer, 'MemFree: %d', $free);
  24.                         $freeIsFound = true;
  25.                     }
  26.  
  27.                     if ($totalIsFound && $freeIsFound) {
  28.                         break;
  29.                     }
  30.                 }
  31.             }
  32.  
  33.             @fclose($handle);
  34.         }
  35.  
  36.         return [
  37.             'total' => self::bytesToHuman($total > 0 ? (int)$total * 1024 : 0),
  38.             'free' => self::bytesToHuman($free > 0 ? (int)$free * 1024 : 0)
  39.         ];
  40.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement