phpInfoService->getStructuredInfo(); // Prepare data for template $generalInfo = []; foreach ($phpInfo['general'] as $key => $value) { $generalInfo[] = [ 'key' => ucwords(str_replace('_', ' ', $key)), 'value' => (string)$value, ]; } $configInfo = []; foreach ($phpInfo['configuration'] as $key => $value) { $configInfo[] = [ 'key' => ucwords(str_replace('_', ' ', $key)), 'value' => (string)$value, ]; } $data = [ 'title' => 'PHP Information', 'general_info' => $generalInfo, 'config_info' => $configInfo, 'extensions_count' => $phpInfo['extensions']['count'], 'extensions_list' => $phpInfo['extensions']['list'], 'current_year' => $this->clock->now()->format('Y'), ]; $finalData = $this->layoutProcessor->processLayoutFromArray($data); return new ViewResult( template: 'phpinfo', metaData: new MetaData('PHP Information', 'PHP Information and Configuration'), data: $finalData ); } }