Функции бывают разные.
Ключевые понятия:
1. Идемпотентность.
1. Чистая функция.
1. Побочные эффекты.
1. Детерминированность
Так вот во вью, в идеале должны вызываться только чистые функции или на худой конец функции без побочных эффектов.
В вашей запрос в базу это побочный эффект, такое лучше делать в контроллере, а во вью передавать данные.
Но на самом деле ваш код еще и антипаттерн, так называемая проблема `select N + 1`. Запросы в цикле - зло. Вы не пользуетесь ни базой данных, ни взможностями вашей ORM (если это она).