]> git.nbdom.net Git - nb.git/commitdiff
www/dbq/dbq.php
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Sat, 23 Nov 2024 15:06:26 +0000 (15:06 +0000)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Sat, 23 Nov 2024 15:06:26 +0000 (15:06 +0000)
www/dbq/dbq.php

index 049e66483853a48df123b05b5bb6aaa74492679e..4c80c8c858b229c1e3b4e8717abf34410b085010 100644 (file)
@@ -1250,6 +1250,10 @@ EOF;
                        # 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());
@@ -1321,6 +1325,60 @@ EOF;
        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());