1
0
Fork 0

Increase memory_limit to 256M if it is lower than this value

pull/1025/head
Kirill chEbba Chebunin 2012-08-24 17:06:03 +04:00
parent 99f3444f30
commit 4f129424e1
2 changed files with 28 additions and 0 deletions

View File

@ -8,6 +8,31 @@ use Composer\Console\Application;
error_reporting(-1); error_reporting(-1);
@ini_set('display_errors', 1); @ini_set('display_errors', 1);
$memoryInBytes = function ($value) {
//$memoryLimit = ini_get('memory_limit');
$unit = strtolower(substr($value, -1, 1));
$value = (int) $value;
switch($unit) {
case 'g':
$value *= 1024;
case 'm':
$value *= 1024;
case 'k':
$value *= 1024;
}
return $value;
};
$memoryLimit = trim(ini_get('memory_limit'));
// Increase memory_limit if it is lower than 256M
if ($memoryLimit != -1 && $memoryInBytes($memoryLimit) < 256 * 1024 * 1024) {
@ini_set('memory_limit', '256M');
printf('Warning: memory_limit was increased from %s to %s' . PHP_EOL . PHP_EOL, $memoryLimit, '256M');
}
unset($memoryInBytes);
// run the command application // run the command application
$application = new Application(); $application = new Application();
$application->run(); $application->run();

View File

@ -9,6 +9,9 @@ If composer shows memory errors on some commands:
The `memory_limit` ini value should be increased. The `memory_limit` ini value should be increased.
> **Note:** Composer internaly increases the memory_limit to 256M.
> It is a good idea to create an issue for composer if you get memory errors.
Get current value: Get current value:
php -r "echo ini_get('memory_limit').PHP_EOL;" php -r "echo ini_get('memory_limit').PHP_EOL;"