Разрешенный объем памяти x исчерпана ошибка при установке PHPUnit с Yii
Я следую вместе с книгой "Разработка гибких веб-приложений с Yii 1.1 и PHP5", и я только начал часть о модульном тестировании в главе 2.
Когда я следую инструкциям по установке PHPUnit через PEAR, я получаю фатальную ошибку "Allowed memory size of x exhausted."
Я попытался увеличить выделенную память до 1024 в верхней части PEAR.PHP, используя ini_set('memory_limit','1024M');
Но это только вызвало сбой CLI.
Вот полное сообщение об ошибке:
C:\xampp\htdocs\yii_sc2>pear channel-discover pear.phpunit.de
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate
269279590 bytes) in C:\xampp\php\PEAR\PEAR.php on line 719
Call Stack:
0.0015 535368 1. {main}() C:\xampp\php\PEAR\pearcmd.php:0
0.0986 3506816 2. PEAR::popErrorHandling() C:\xampp\php\PEAR\pearcmd.php:269
Есть идеи?
2 ответа
Не изменяйте ограничение памяти в файле PEAR.php. Скорее всего, оно будет перезаписано после обновления PEAR. Если изменение лимита памяти в php.ini для вашего исполняемого файла php-cli не устраняет ошибку, попробуйте запустить
peardev upgrade-all
которая является той же командой, что и pear
но не имеет ограничения памяти. Для установки PHPUnit у вас должен быть как минимум PEAR-инсталлятор 1.9.1. Вы можете проверить свою версию PEAR, набрав
pear version
Как только все обновится до нужной версии, запустите
peardev channel-discover pear.phpunit.de
peardev channel-discover components.ez.no
peardev channel-discover pear.symfony-project.com
peardev install --alldeps --force phpunit/PHPUnit
Если это по-прежнему приводит к ошибкам, попробуйте зайти на официальные каналы поддержки
Вы должны увеличить свой memory_limit
параметр в вашем php.ini
файл.
Ваше текущее значение: memory_limit = 16M
Измените это на: memory_limit = 64M
(или больше, если вам нужно)