Не удается переименовать поля массива в тип FIELDNAME для разбитых на страницы результатов

Единственное, что мне нужно, это переименовать все поля результатов из типа PHPNAME в FIELDNAME. Я запускаю такой запрос:

$members = MemberQuery::create()->filterByOrganizerId($organizerId)
->setFormatter($formatter)
->useTableOneQuery()
->useTableTwoQuery()
->where('TableTwo.Status != ?', TableTwo::STATUS_FAILED)
->endUse()
->endUse()
->groupById()
->paginate($page, $pageSize);

куда $formatter является:

    $arrayDataFetcher = new ArrayDataFetcher([]);
$arrayDataFetcher->setIndexType(TableMap::TYPE_FIELDNAME);

$formatter= new ArrayFormatter();
$formatter->setDataFetcher($arrayDataFetcher);

Но каждый массив все еще имеет имена полей PHPNAME. Когда я не разбиваю результаты и просто использую find() Я могу просто использовать toArray на результат и все в порядке, но я не могу понять, как сделать то же самое с нумерацией страниц

0

Решение

Решение довольно простое. Просто используйте toArray() на ваш результат. Не доверяйте автозаполнению. IDE не показывает этот метод, но он существует! Доверительная документация, проверка Вот, и вы увидите комментарий, что постраничные результаты ведут себя как сбор, это именно то, что нам нужно.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]