From 04d6d5ca99ebfd1cebb8ce06618fb3811fc1a8aa Mon Sep 17 00:00:00 2001 From: Charles Date: Thu, 9 Jan 2020 10:55:03 +0100 Subject: phpmyadmin working --- srcs/phpmyadmin/libraries/classes/SysInfoLinux.php | 103 +++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 srcs/phpmyadmin/libraries/classes/SysInfoLinux.php (limited to 'srcs/phpmyadmin/libraries/classes/SysInfoLinux.php') diff --git a/srcs/phpmyadmin/libraries/classes/SysInfoLinux.php b/srcs/phpmyadmin/libraries/classes/SysInfoLinux.php new file mode 100644 index 0000000..21ac9cd --- /dev/null +++ b/srcs/phpmyadmin/libraries/classes/SysInfoLinux.php @@ -0,0 +1,103 @@ + (int) $nums[1] + (int) $nums[2] + (int) $nums[3], + 'idle' => (int) $nums[4], + ]; + } + + /** + * Checks whether class is supported in this environment + * + * @return bool true on success + */ + public function supported() + { + return @is_readable('/proc/meminfo') && @is_readable('/proc/stat'); + } + + /** + * Gets information about memory usage + * + * @return array with memory usage data + */ + public function memory() + { + preg_match_all( + SysInfo::MEMORY_REGEXP, + file_get_contents('/proc/meminfo'), + $matches + ); + + $mem = array_combine($matches[1], $matches[2]); + + $defaults = [ + 'MemTotal' => 0, + 'MemFree' => 0, + 'Cached' => 0, + 'Buffers' => 0, + 'SwapTotal' => 0, + 'SwapFree' => 0, + 'SwapCached' => 0, + ]; + + $mem = array_merge($defaults, $mem); + + foreach ($mem as $idx => $value) { + $mem[$idx] = intval($value); + } + + $mem['MemUsed'] = $mem['MemTotal'] + - $mem['MemFree'] - $mem['Cached'] - $mem['Buffers']; + + $mem['SwapUsed'] = $mem['SwapTotal'] + - $mem['SwapFree'] - $mem['SwapCached']; + + return $mem; + } +} -- cgit