Задать вопрос
@yarik_gui
back & friend

Чем заменить fetchAll()?

Всем привет, начну с кода :)
$nodes_DF = db_query("SELECT 10 полей FROM  10 таблиц")->fetchAll();

  $nodeJSON_DF = json_encode(end($nodes_DF));

fetchAll() жрет всю память, и вылетает ошибка Allowed memory size of 67108864 bytes exhausted. Подскажите как можно переделать запрос без использования fetchAll();
  • Вопрос задан
  • 186 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Если у вас 10 полей из 10 таблиц не влезают в память, то никак вы их не достанете без увеличения памяти для php.

Но в целом это значит что подход какой-то не очень, не надо никуда ничего передавать такими количествами.
Надо или разбить на части, или разобраться что всё таки надо передать, а мусор весь выкинуть.

Чтобы не значило ваше "передать" в данном случае.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы