0

当数组中不存在新对象时,我需要将其推送到数组中。但我一直收到这个错误。我读到这经常发生在循环中创建新对象或将项目推入循环中的数组时。我试图重用这些对象并只是重置成员值,但我仍然遇到相同的错误。实现这一目标的最佳方法是什么?

错误:

PHP Fatal error:  Allowed memory size of 67108864 bytes exhausted (tried to allocate 71 bytes)

代码:

if(!array_key_exists($a->name, $tArray)) $tArray[] = $a;
4

1 回答 1

3

你有一个错误。做这个:

if(!array_key_exists($a->name, $tArray)) $tArray[$a->name] = $a;

否则 array_key_exists 将始终返回 false 并始终添加 $a 。

于 2013-03-27T19:27:20.973 回答