# NB 08.10.24 $attrs = ($this->params['action'] ? explode(',',$this->params['action']) : ['dn','objectClass']);
# NB 08.10.24 $this->page($this->ldap($table,$attrs));
+ } elseif ($action == 'phpinfo2') {
+ $this->deniedUnless($this->perm >= self::ADMIN);
+ $this->page($this->phpinfo2());
+
} elseif ($action == 'phpinfo') {
$this->deniedUnless($this->perm >= self::ADMIN);
$this->page($this->phpinfo());
echo "_______________________________\n";
}
+ private function phpinfo2() {
+ # See: https://www.php.net/manual/en/reserved.constants.php
+
+ $data['General']['System'] = php_uname();
+ #$data['General']['Build Date'] = PHP_BINARY ;
+ $data['General']['Build System'] = PHP_OS;
+
+ $prettyNames = [
+ 'apache2handler' => 'Apache 2 Handler',
+ 'cgi-fcgi' => 'FastCGI',
+ 'cli' => 'Command Line Interface',
+ 'embed' => 'Embedded PHP',
+ 'fpm-fcgi' => 'FPM/FastCGI',
+ 'litespeed' => 'LiteSpeed Web Server',
+ 'phpdbg' => 'PHP Debugger',
+ // Add more mappings if needed
+ ];
+ $data['General']['Server Api'] = $prettyNames[PHP_SAPI] ?? "Unknown SAPI (".PHP_SAPI.")";
+
+ $data['General']['Virtual Directory Support'] = (defined('PHP_VIRTUAL_DIR') and PHP_VIRTUAL_DIR) ? 'enabled' : 'disabled';
+
+ $data['General']['Configuration File (php.ini) Path'] = PHP_CONFIG_FILE_SCAN_DIR;
+ $data['General']['Loaded Configuration File'] = php_ini_loaded_file();
+ #$data['General']['Scan this dir for additional .ini files'] = php_ini_scanned_files();
+
+ $data['General']['PHP API'] = PHP_VERSION_ID;
+
+ #$data['General']['PHP Extension'] = ZEND_MODULE_API_NOSION_ID;
+ #$data['General']['Zend Extension'] = ZEND_MODULE_API_NOSION_ID;
+ #$data['General']['Zend Extension Build'] = zend_version();
+ #$data['General']['PHP Extension Build'] = PHP_OS . (PHP_ZTS ? ', ZTS' : ', NTS');
+
+ $data['General']['Debug Build'] = ( defined('ZEND_DEBUG_BUILD') and ZEND_DEBUG_BUILD ) ? 'yes' : 'no';
+ $data['General']['Thread Safety'] = ( defined('PHP_ZTS') and PHP_ZTS ) ? 'enabled' : 'disabled';
+ $data['General']['IPv6 Support'] = ( defined('AF_INET6') and AF_INET6 ) ? 'enabled' : 'disabled';
+
+ #$data['General']['Zend Memory Manager'] = function_exists('zend_mem_usage') ? 'enabled' : 'disabled';
+ #$data['General']['Zend Signal Handling'] = function_exists('zend_signal') ? 'enabled' : 'disabled';
+ #$data['General']['DTrace Support'] = ?
+
+ #$data['General'][''] =
+ $data['General']['Registered PHP Streams'] = implode(', ', stream_get_wrappers());
+ $data["Registered Stream Socket Transports"] = implode(', ', stream_get_transports());
+ $data["Registered Stream Filters"] = implode(', ', stream_get_filters());
+ debug($data);
+
+
+ ob_start();
+ phpinfo(INFO_GENERAL + INFO_CONFIGURATION + INFO_MODULES + INFO_ENVIRONMENT + INFO_VARIABLES);
+ $phpinfo = ob_get_contents();
+ ob_end_clean();
+ return $phpinfo;
+ }
+
private function phpinfo() {
$lines = explode("\n",$this->phpinfoText());