Server IP : 23.254.227.96 / Your IP : 216.73.216.120 Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64 User : viralblo ( 1001) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/root/usr/local/cwpsrv/var/services/pma/libraries/classes/Server/SysInfo/ |
Upload File : |
<?php declare(strict_types=1); namespace PhpMyAdmin\Server\SysInfo; use const PHP_OS; use function in_array; use function ucfirst; /** * Library for extracting information about system memory and cpu. * Currently supports all Windows and Linux platforms * * This code is based on the OS Classes from the phpsysinfo project * (https://phpsysinfo.github.io/phpsysinfo/) */ class SysInfo { public const MEMORY_REGEXP = '/^(MemTotal|MemFree|Cached|Buffers|SwapCached|SwapTotal|SwapFree):\s+(.*)\s*kB/im'; /** * Returns OS type used for sysinfo class * * @param string $php_os PHP_OS constant * * @return string */ public static function getOs($php_os = PHP_OS) { // look for common UNIX-like systems $unix_like = [ 'FreeBSD', 'DragonFly', ]; if (in_array($php_os, $unix_like)) { $php_os = 'Linux'; } return ucfirst($php_os); } /** * Gets SysInfo class matching current OS * * @return Base sysinfo class */ public static function get() { $php_os = self::getOs(); switch ($php_os) { case 'Linux': $sysInfo = new Linux(); if ($sysInfo->supported()) { return $sysInfo; } break; case 'WINNT': $sysInfo = new WindowsNt(); if ($sysInfo->supported()) { return $sysInfo; } break; case 'SunOS': $sysInfo = new SunOs(); if ($sysInfo->supported()) { return $sysInfo; } break; } return new Base(); } }