Co w serwerze piszczy, czyli jak poznać konfigurację maszyny przy użyciu PHP oraz SQL

Zajrzenie do zawartości zmiennej tablicowej $_SERVER pozwala uzyskać kilka wartościowych informacji na temat samego serwera oraz środowiska uruchamiania. Zmienna zawiera kilkadziesiąt par klucz-wartość, w tym do najciekawszych należą klucze:
SERVER_ADDR (adres IP serwera)
SERVER_ADMIN (kontaktowy adres administratora)
SERVER_ID
SERVER_NAME
SERVER_SOFTWARE (oprogramowanie WWW zainstalowane na serwerze)

Do funkcji PHP pozwalających uzyskać interesujące informacje na temat środowiska możemy zaliczyć:
phpversion()
zend_version()
memory_get_usage()
memory_get_peak_usage()

Następujące funkcje pomogą wyczerpać temat zainstalowanych rozszerzeń:
get_loaded_extensions()
phpversion( $nazwa_rozszerzenia )

Zbiór bogatych treściowo wyników zwrócą następujące funkcje:
ini_get_all() (wszystkie ustawienia inicjalizacyjne)
hash_algos() (zbiór wszystkich dostępnych algorytmów szyfrujących/haszujących)
get_defined_constants() (zbiór wszystkich zdefiniowanych stałych)
mb_list_encodings() (lista wszystkich dostępnych kodowań)

Jak dowiedzieć się, które z poleceń linii komend są dostępne do wykonania? Wystarczy wywołać następujące polecenie np. przy użyciu funkcji exec():
compgen -abck

W zakresie pozyskania informacji o działającym serwerze SQL znów z pomocą przychodzi PHP i wywołanie funkcji z grupy proceduralnej mysqli_* według następującego schematu:
$funkcje = [
'mysqli_get_client_info',
'mysqli_get_client_version',
'mysqli_get_host_info',
'mysqli_get_proto_info',
'mysqli_get_server_info',
'mysqli_get_server_version',
'mysqli_character_set_name',
'mysqli_stat',
'mysqli_thread_id',
'mysqli_get_connection_stats',
];
foreach($funkcje as $funkcja) {
$tablica = call_user_func($funkcja,$mysqli);
}

gdzie $mysqli jest uchwytem połączenia MySQLi w PHP.

I na koniec czysty SQL. Po zadaniu poniższych zapytań w bazie typu MySQL otrzymamy bardzo obszerne dwuwymiarowe (tablicowe) odpowiedzi:
SHOW ENGINES
SHOW TABLE STATUS
SHOW VARIABLES
SHOW CHARACTER SET
SHOW GLOBAL STATUS
SHOW STATUS
SHOW COLLATION

Dokumentacje:
[PHP] zmienna $_SERVER
https://www.php.net/manual/en/reserved.variables.server
[PHP] funkcje informacyjne
https://www.php.net/manual/en/ref.info.php
[bash] komenda compgen
https://linuxcommand.org/lc3_man_pages/compgenh.html
[PHP] klasa MySQLi
https://www.php.net/manual/en/class.mysqli.php
[MySQL] zapytania informacyjne z kategorii SHOW
https://dev.mysql.com/doc/refman/8.0/en/show.html