使用Yii安装PHPUnit时允许的内存大小为x时出错

使用Yii安装PHPUnit时允许的内存大小为x时出错,php,phpunit,pear,yii,Php,Phpunit,Pear,Yii,我跟随《使用Yii 1.1和PHP5进行敏捷Web应用程序开发》一书,我刚刚开始了第2章中关于单元测试的部分 当我按照通过PEAR安装PHPUnit的说明进行操作时,我收到一个致命错误“允许的内存大小x耗尽”。我尝试使用ini\u set('memory\u limit','1024M')将PEAR.PHP顶部的分配内存增加到1024但这只是导致CLI崩溃 以下是完整的错误消息: C:\xampp\htdocs\yii_sc2>pear channel-discover pear.phpu

我跟随《使用Yii 1.1和PHP5进行敏捷Web应用程序开发》一书,我刚刚开始了第2章中关于单元测试的部分

当我按照通过PEAR安装PHPUnit的说明进行操作时,我收到一个致命错误
“允许的内存大小x耗尽”。
我尝试使用
ini\u set('memory\u limit','1024M')将PEAR.PHP顶部的分配内存增加到1024但这只是导致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

有什么想法吗?

您需要增加
php.ini
文件中的
memory\u limit
参数

您当前的值是: 内存限制=16M

将其更改为: 内存限制=64M


(或者更多,如果需要)

不要更改PEAR.php文件中的内存限制。一旦您更新PEAR,它可能会被覆盖。如果为php cli可执行文件更改php.ini中的内存限制不会使错误消失,请尝试运行

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

如果仍有错误,请考虑在官方支持渠道下注


它可能在做什么,分配超过256兆…在安装phpunit之前,请确保您拥有最新的pear安装程序,例如,执行pear升级所有
,直到它告诉您没有什么需要升级。这并没有解决问题,事实上,当我尝试执行pear升级所有时,php CLI停止工作。能否保存
http://pear.php.net/go-pear
C:\xampp\php\go pear.php
,然后运行
php go pear.php
,然后重试?谢谢,我最终选择了这条路线。原来XAMPP附带了一个过时的PEAR版本。
peardev
对于一个解决方案来说是一个不可思议的晦涩难懂的东西。。但它确实在
pear install doc.php.net/pman
崩溃时工作,内存耗尽错误。