* @license Unlicense
* @link https://hugofara.github.io/lwt/docs/php/files/index.html
* @since 2.7.0
*/
namespace Lwt\Interface\Server\Data;
require_once 'inc/session_utility.php';
/**
* Return a lot of different server state variables.
*
* @return (false|float|string)[] {"db_prefix": string, "db_size": float, "server_soft": string[],
* "apache": string, "php": string, "mysql": string}
* Table prefix, database size, server software, apache version, PHP version, MySQL
* version
*
* @global string $tbpref Database table prefix
* @global string $dbname Database name
*
* @psalm-return array{db_name: string, db_prefix: string, db_size: float, server_soft: string, apache: string, php: false|string, mysql: string}
*/
function get_server_data_table(): array
{
global $tbpref, $dbname;
$dbaccess_format = convert_string_to_sqlsyntax($dbname);
$data_table = array();
$data_table["db_name"] = $dbname;
$data_table["db_prefix"] = $tbpref;
$temp_size = get_first_value(
"SELECT ROUND(SUM(data_length+index_length)/1024/1024, 1) AS value
FROM information_schema.TABLES
WHERE table_schema = $dbaccess_format
AND table_name IN (
'{$tbpref}archivedtexts', '{$tbpref}archtexttags',
'{$tbpref}feedlinks', '{$tbpref}languages',
'{$tbpref}newsfeeds', '{$tbpref}sentences', '{$tbpref}settings',
'{$tbpref}tags', '{$tbpref}tags2',
'{$tbpref}textitems2', '{$tbpref}texts', '{$tbpref}texttags',
'{$tbpref}words', '{$tbpref}wordtags'
)"
);
if ($temp_size === null) {
$data_table["db_size"] = 0.0;
} else {
$data_table["db_size"] = floatval($temp_size);
}
$data_table["server_soft"] = $_SERVER['SERVER_SOFTWARE'];
$data_table["apache"] = "Apache/?";
if (str_starts_with($data_table["server_soft"], "Apache/")) {
$temp_soft = explode(' ', $data_table["server_soft"]);
$data_table["apache"] = $temp_soft[0];
}
$data_table["php"] = phpversion();
$data_table["mysql"] = (string)get_first_value("SELECT VERSION() AS value");
return $data_table;
}
/**
* Display the main content for the page.
*
* @return void
*/
function display_content(): void
{
$data = get_server_data_table();
pagestart("Server Data", true);
?>
Server
| Data |
Value |
| LWT version |
|
|
Web Server
|
|
| Server Software |
|
| Server Location |
|
|
PHP
Version
|
|
Database
| Data |
Value |
|
Database
name |
|
| Database prefix (surrounded by "") |
"" |
| Database Size |
MB |
|
MySQL
Version
|
|
Client API