a to bardzo zle. obiektowka to wygoda i przyszlosc programowania.
niby idziesz w dobrym kierunku ale, nie do konca.
muisz stworzyc warstwe abstrakcji pomiedzy magazynem danych a twoja aplikacja. a to oznacza ze musisz to zrobic dwupoziomowo.
na poczatku piszesz biblioteke podstawowych operacji dla plikow, mysql'a itd... czyli pobranie danych (selecty, albo fgetsy), zapisanie danych (inserty, fputsy), moze jakies transakcje itd.
majac bibliotke z funkcjami ktore robia to samo dla roznych magazynow danych, mozesz zrobic biblioteke wyzszego poziomu, ktora bedzie korzystala z tych funkcji ktore napisales wczesniej. ta funkcja wywolywalaby odpowiednia funkcje prymitywna w zaleznosci od konfiguracji (sql, pliki).
w ten sposob w aplikacji bedziesz pisal po prostu zapiszDane($dane), a ta funkcja sama powinna wywolac odpowiednia inna funkcje zapiszDoPliku($dane), albo sqlQuery($dane)... oczywsicie wszytkie te funkcje sa twoje.
z grubsza wyjasnilem o co chodzi...