48 if (is_array(${
$GLOBALS[
'TYPO3_CONF_VARS'][
'SC_OPTIONS'][
'ext/install/mod/class.tx_install.php'][
'requiredPhpModules']})) {
49 foreach (${
$GLOBALS[
'TYPO3_CONF_VARS'][
'SC_OPTIONS'][
'ext/install/mod/class.tx_install.php'][
'requiredPhpModules']} as $className) {
50 $hookObject = GeneralUtility::makeInstance($className);
51 $modules = $hookObject->setRequiredPhpModules($modules, $this);
54 $missingPhpModules = [];
55 foreach ($modules as $module) {
56 if (is_array($module)) {
57 $detectedSubmodules =
false;
58 foreach ($module as $submodule) {
59 if (extension_loaded($submodule)) {
60 $detectedSubmodules =
true;
63 if ($detectedSubmodules ===
false) {
64 $missingPhpModules[] = sprintf($this->
getLanguageService()->getLL(
'status_phpModulesGroup'),
'(' . implode(
', ', $module) .
')');
66 } elseif (!extension_loaded($module)) {
67 $missingPhpModules[] = $module;
70 if (!empty($missingPhpModules)) {
72 $message = sprintf($this->
getLanguageService()->getLL(
'status_phpModulesList'), implode(
', ', $missingPhpModules));
74 $severity = ReportStatus::ERROR;
78 $severity = ReportStatus::OK;
80 return GeneralUtility::makeInstance(ReportStatus::class, $this->
getLanguageService()->getLL(
'status_phpModules'), $value, $message, $severity);