2023-10-24 08:19:23 -04:00
< ? php
declare ( strict_types = 1 );
/**
2024-06-03 04:23:34 -04:00
* SPDX - FileCopyrightText : 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX - License - Identifier : AGPL - 3.0 - or - later
2023-10-24 08:19:23 -04:00
*/
namespace OCA\Settings\SetupChecks ;
use OC\MemoryInfo ;
use OCP\IL10N ;
use OCP\SetupCheck\ISetupCheck ;
use OCP\SetupCheck\SetupResult ;
use OCP\Util ;
class PhpMemoryLimit implements ISetupCheck {
public function __construct (
private IL10N $l10n ,
private MemoryInfo $memoryInfo ,
) {
}
public function getCategory () : string {
return 'php' ;
}
public function getName () : string {
return $this -> l10n -> t ( 'PHP memory limit' );
}
public function run () : SetupResult {
if ( $this -> memoryInfo -> isMemoryLimitSufficient ()) {
return SetupResult :: success ( Util :: humanFileSize ( $this -> memoryInfo -> getMemoryLimit ()));
} else {
2024-10-12 11:42:39 -04:00
return SetupResult :: error ( $this -> l10n -> t ( 'The PHP memory limit is below the recommended value of %s. Some features or apps - including the Updater - may not function properly.' , Util :: humanFileSize ( MemoryInfo :: RECOMMENDED_MEMORY_LIMIT )));
2023-10-24 08:19:23 -04:00
}
}
}