Config: add ini_set() helper method

This commit is contained in:
Benjamin Renard 2023-03-01 14:17:15 +01:00
parent 41fe069fe9
commit 1e59f1b815
Signed by: bn8
GPG key ID: 3E2E1CE1907115BC
3 changed files with 16 additions and 5 deletions

View file

@ -52,12 +52,12 @@ class App {
// Define upload_tmp_dir // Define upload_tmp_dir
if (self::isset('upload_tmp_directory')) if (self::isset('upload_tmp_directory'))
ini_set('upload_tmp_dir', self::get('upload_tmp_directory', null, 'string')); Config :: ini_set('upload_tmp_dir', self::get('upload_tmp_directory', null, 'string'));
if (self::isset('upload_max_filesize')) { if (self::isset('upload_max_filesize')) {
ini_set('upload_max_filesize', self::get('upload_max_filesize', null, 'string')); Config :: ini_set('upload_max_filesize', self::get('upload_max_filesize', null, 'string'));
// post_max_size must be larger than upload_max_filesize // post_max_size must be larger than upload_max_filesize
// See: https://www.php.net/manual/en/ini.core.php#ini.post-max-size // See: https://www.php.net/manual/en/ini.core.php#ini.post-max-size
ini_set('post_max_size', strval(self::get('upload_max_filesize', null, 'int') * 1.1)); Config :: ini_set('post_max_size', strval(self::get('upload_max_filesize', null, 'int') * 1.1));
} }
if (self :: get('log.enabled', true, 'bool')) if (self :: get('log.enabled', true, 'bool'))

View file

@ -229,6 +229,17 @@ Class Config {
return true; return true;
} }
/**
* Helper to set PHP INI option and log error
* @param string $option
* @param string|int|float|bool|null $value
* @return void
*/
public static function ini_set($option, $value) {
if (ini_set($option, $value) === false)
Log::warning('Fail to set INI options "%s" to "%s"', $option, $value);
}
} }
# vim: tabstop=4 shiftwidth=4 softtabstop=4 expandtab # vim: tabstop=4 shiftwidth=4 softtabstop=4 expandtab

View file

@ -35,8 +35,8 @@ class Session {
if (is_int($max_duration)) if (is_int($max_duration))
self :: $max_duration = $max_duration; self :: $max_duration = $max_duration;
ini_set('session.gc_maxlifetime', strval(self :: $max_duration)); Config :: ini_set('session.gc_maxlifetime', strval(self :: $max_duration));
ini_set('session.cookie_lifetime', strval(self :: $max_duration)); Config :: ini_set('session.cookie_lifetime', strval(self :: $max_duration));
// Start session // Start session
session_start(); session_start();