public static raiseMemoryLimitIfNecessary ( ) : boolean | ||
return | boolean | true if set; false otherwise |
public static function raiseMemoryLimitIfNecessary()
{
$memoryLimit = self::getMemoryLimitValue();
if ($memoryLimit === false) {
return false;
}
$minimumMemoryLimit = Config::getInstance()->General['minimum_memory_limit'];
if (self::isArchivePhpTriggered()) {
// core:archive command: no time limit, high memory limit
self::setMaxExecutionTime(0);
$minimumMemoryLimitWhenArchiving = Config::getInstance()->General['minimum_memory_limit_when_archiving'];
if ($memoryLimit < $minimumMemoryLimitWhenArchiving) {
return self::setMemoryLimit($minimumMemoryLimitWhenArchiving);
}
return false;
}
if ($memoryLimit < $minimumMemoryLimit) {
return self::setMemoryLimit($minimumMemoryLimit);
}
return false;
}
public function execute() { $label = $this->translator->translate('Installation_SystemCheckMemoryLimit'); SettingsServer::raiseMemoryLimitIfNecessary(); $memoryLimit = SettingsServer::getMemoryLimitValue(); $comment = $memoryLimit . 'M'; if ($memoryLimit >= $this->minimumMemoryLimit) { $status = DiagnosticResult::STATUS_OK; } else { $status = DiagnosticResult::STATUS_WARNING; $comment .= sprintf('<br />%s<br />%s', $this->translator->translate('Installation_SystemCheckMemoryLimitHelp'), $this->translator->translate('Installation_RestartWebServer')); } return array(DiagnosticResult::singleResult($label, $status, $comment)); }