Я считаю, что это зависит от размера проекта. Вы можете начать с малого, со всего в одном файле, а затем, по мере накопления кода и лучшего понимания моделируемой области, вы можете извлекать единицы в отдельные файлы.
Соглашение об использовании класса для файла происходит из мира Java. В течение многих лет PHP пытался подражать Java, однако некоторые практики абсурдны. Например, у вас не может быть функций, только классы, даже если они не более чем набор статических методов.
Вот пример веб-фреймворка, называемого Konstrukt , который использует несколько единиц (классов / функций / констант) на файл и, кажется, работает хорошо.
Как сказал @Nabeel, у вас может возникнуть проблема с поиском кода, если все находится внутри одного большого файла. Судите по проекту, который вы разрабатываете.
Что касается производительности, вам придется проводить тесты, поскольку опять же это зависит от проекта, но require
/ include
влечет за собой некоторое снижение производительности из-за файлового ввода-вывода. Так что может быть лучше, чтобы у вас был один файл, загруженный за запрос. Фактический синтаксический анализ может быть быстрее, чем системные вызовы, которые ищут требуемый файл.