В грамотном, современном, развесистом РНР классы - это весь код проекта вообще, причем большая часть классов "знает свое место" в архитектуре и просто не может валяться где попало. Там подобный вопрос теряет смысл.
В Битриксе же - легаси-проекте файловой CMS - поневоле куча файлов-скриптов с портянками кода, там пых работает и логикой, и шаблонизатором, а в классы может просто выноситься некий функционал чисто ради упрощения кода. Но если такой класс, у которого нет своего места в общей архитектуре системы, используется только и исключительно в этом же скрипте - особенного смысла выносить его в отдельный файл и нет, это уже чистый карго-культ.