当前位置: 首页 > 知识库问答 >
问题:

Symfony 3 PHP致命错误:允许的内存大小X字节已用尽(尝试分配Y字节)

堵昊焱
2023-03-14

尝试使用命令生成数据库时:

php bin/console doctrine:schema:update --force

我发现以下错误:

PHP致命错误:第281行的…\vendor\doctor\orm\lib\doctor\orm\EntityManager.PHP中允许的内存大小为1073741824字节(尝试分配262144字节)

致命错误:允许的内存大小1073741824字节耗尽(试图分配262144字节)在...\供应商\原则\orm\lib\原则\ORM\EntityManager.php行281

PHP致命错误:第0行中未知的允许内存大小为1073741824字节(尝试分配262144字节)

致命错误:第0行上未知的允许内存大小1073741824字节已用尽(尝试分配262144字节)

我已经尝试了所有可能的设置memory_limit在php.ini,没有帮助。

与:

php bin/控制台原则:模式:更新——转储sql

错误是:

PHP致命错误:第281行的…\vendor\doctor\orm\lib\doctor\orm\EntityManager.PHP中允许的内存大小为1073741824字节(尝试分配262144字节)

致命错误:允许的内存大小1073741824字节耗尽(试图分配262144字节)在...\供应商\原则\orm\lib\原则\ORM\EntityManager.php行281

PHP致命错误:第0行中未知的允许内存大小为1073741824字节(尝试分配262144字节)

致命错误:第0行上未知的允许内存大小1073741824字节已用尽(尝试分配262144字节)

共有1个答案

能翔宇
2023-03-14

在我的例子中,这个错误是由一个非常具体的错误引起的:

我的用户映射设置了自定义存储库类。所述存储库有一个如下所示的构造函数,它导致了一个无限循环:

public function __construct(private EntityManagerInterface $manager)
{
    $this->repository = $manager->getRepository(User::class);
}

因为我并不真正需要自定义存储库,所以只需将其从映射中删除即可。

 类似资料: