Tanto per continuare: non vuoi usare un framework MVC completo? benissimo, non sei obbligato. Vuoi però gestire in maniera automatizzata o astratta la comunicazione col database che usi (magari perchè pianifichi la migrazione ad altro database o il supporto a database diversi ) ? allora puoi pensare di usare un entity framework (Doctrine? chi ha detto Doctrine? Io ho detto Doctrine! Che figata Doctrine! ) da integrare nel tuo progetto. Puoi decidere di usare librerie tratte da altri frameworks (Symfony? Chi ha detto Symfony? Io ho detto Symfony! Che figata i components di Symfony!). Puoi usare librerie di terze parti che svolgono compiti speicifici (ad esempio per la creazione di files pdf, uploads, resize di immagini, etc ). Insomma, c'è molto materiale in giro che si può riutilizzare, il perchè và fatto è che spesso o quasi sempre sono progetti molto stabili, ben fatti, e comunque controllati e sviluppati da piu persone, resi quindi stabili e largamente usati (con tutti i pro e i contro che tale cosa comporta ). Partire sempre da zero è spesso un'idiozia o ancora più spesso un compito che supera le competenze o le esigenze di tempo dello sviluppatore