Баг ob_start fetchAll

ArbNet
На сайте с 27.10.2019
Offline
77
41

Заметил такой баг, при вызове буферизации ob_start, PDO fetchAll возвращает массив без ключей

Array
(
   => Array
        (
           => 1
           => Catg
        )

   => Array
        (
           => 2
           => Article
        )

)

без вызова буферизации ob_start получаю нормальный массив какой и должен быть

Array
(
    [0] => Array
        (
            [id] => 1
            [alias] => Catg
        )

    [1] => Array
        (
            [id] => 2
            [alias] => Article
        )

)

Кто то сталкивался с подобным? Мне нужен нормальный массив при включении буферизации.

Блажен, кто не стремится сделать лучше: он не рискует быть не понятым.
LEOnidUKG
На сайте с 25.11.2006
Offline
1590
#1

Больше, похоже, что вывод глючит т.к. он не может быть без ключей. Попробуйте вызывать эти ключи.

Какая версия PHP?

✅ Трастовых площадок под размещение статей и ссылок. Опыт 12 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Ускорение ваших сайтов (WP, Opencart и др.) + Настройка сервера ( https://searchengines.guru/ru/forum/997205 )
ArbNet
На сайте с 27.10.2019
Offline
77
#2

PHP Version 7.1.22

В том то и дело что может, именно без ключей. Через foreach($res as $key=>$val) $key пустой

Пробовал в разных местах, везде нормально , а там где мне нужно при включении буферизации ключи съедаются,

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


ЗЫ. Редактор ответа тут говняный стал

ArbNet
На сайте с 27.10.2019
Offline
77
#3
Разобрался. Мой косяк. Во время обработки результата буфера, экранируются метки которые в [] и поэтому ключи удаляются.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий