Symfony最大允许大小错误

时间:2010-03-04 01:07:12

标签: php symfony1

我刚刚搭建了一个新模块,当我使用生成的表单保存时,我得到了:

致命错误:/ Applications / MAMP / htdocs / ats / lib / vendor / symfony / lib / plugins / sfDoctrinePlugin / lib / vendor / doctrine / Doctrine /中允许的内存大小为8388608字节(试图分配19456字节)第404行的Hydrator / Graph.php

任何想法为什么?

3 个答案:

答案 0 :(得分:1)

symfony对内存非常贪心,所以有时会发生这种情况。您可以通过php.ini增加PHP / symfony可用的内存,如上所示:

的php.ini

memory_limit = 128M

128M这里只是一个例子,但你可能需要评估它。

答案 1 :(得分:0)

因为这是你配置的内存限制。你可能想要从php.ini找到它使用的phpinfo()并编辑它以给symfony更多的记忆。

答案 2 :(得分:0)

memory_limit是允许PHP脚本使用的最大内存量。基本上,这是一个安全配置选项,以确保您没有疯狂的PHP脚本并消耗服务器的所有内存 - 或者更糟糕的是,您没有多个PHP脚本占用的内存比服务器有。


可以在php.ini文件中设置此配置指令;它是设置PHP配置的文件。

要找出服务器上php.ini文件的位置,您可以使用phpinfo()函数:在输出顶部附近,应该有一个“Loaded Configuration File”选项


memory_limit应该使用哪个值是一个有趣的问题...过去,当我们只编写小脚本时,8MB通常就足够了。

现在,使用Frameworks,层次结构更大的应用程序,ORM以及所有这些,8MB通常不够(正如您明显注意到的那样) - 我通常设置{{1我的生产服务器上的memory_limit,对我的应用程序来说几乎总是足够的,而不是太多

所以,在我的32M文件中,我有:

php.ini


注意:为memory_limit = 32M 添加一个非常高的值,以摆脱问题是很诱人的......但请记住memory_limit在这里作为安全:你应该确保你的服务器有足够的内存可以同时回答几个请求!