Как бы это странно ни звучало, чтобы не нарушать читабельность - не совмещайте PHP и HTML.
Эту проблему решают по-разному - в MVC для html используются вьюхи, где от php только if, for и foreach. В некоторых фреймворках (Yii2, например) используют виджеты. Можно использовать шаблонизаторы, как twig в Symfony.
Главное не лепить вообще всё в одну кучу - где рендер, там и коннект к бд.