Query::each() - memory limit

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
yujin1st
Сообщения: 183
Зарегистрирован: 2012.03.26, 12:03

Query::each() - memory limit

Сообщение yujin1st » 2015.07.30, 06:36

Здравствуйте, есть в базе порядка 200-300 тысяч записей и нужно их перебрать. Делаю по документации через each() и вываливается ошибка с нехваткой памяти сразу при инициализации цикла. Сам он не выполняется.
foreach (Item::find()->each() as $item) {}

Насколько докапался, выполняется sql запрос "select * from items" без лимитов. Но тут говорят что, PDO должен вернуть только указатель и все должно работать нормально. Сам PDO включен.
Нашел лишь одно обсуждение - но без решения.

Что я делаю не так?


yujin1st
Сообщения: 183
Зарегистрирован: 2012.03.26, 12:03

Re: Query::each() - memory limit

Сообщение yujin1st » 2015.07.30, 06:54

Я как раз эту ссылку и указал в теме. Там же про эту проблему ничего не говориться.

kukuruku
Сообщения: 1255
Зарегистрирован: 2011.02.14, 11:36

Re: Query::each() - memory limit

Сообщение kukuruku » 2015.07.30, 07:06

не заметил первую ссылку
странно что не работает, если об этом методе пишет сам разработчик yii

yujin1st
Сообщения: 183
Зарегистрирован: 2012.03.26, 12:03

Re: Query::each() - memory limit

Сообщение yujin1st » 2015.07.31, 09:46

Взял себе дамп базы на локальное окружение - и у меня все заработало, нормально. Хотя по памяти стоят те же 128 мб. MAMP 3.0.6
В чем можно искать разницу?

Аватара пользователя
samdark
Администратор
Сообщения: 9052
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Query::each() - memory limit

Сообщение samdark » 2015.07.31, 10:09

PDO, версия PHP, флаги для PDO (emulate prepare).

Ответить