https://github.com/webeeq/framework.eeq
Framework.eeq to repozytorium z prostym szkieletem aplikacji, który został napisany w języku PHP (wersja 7+). Korzysta on z bazy danych MySQL. Powstał po wielu latach nauki programowania. Wykorzystane w nim są zasady, jakie powinno się przestrzegać, programując w PHP. Został napisany tak, aby działał maksymalnie szybko. Zapewnia to jego prosta budowa. Jest oparty o framework Symfony. Jednak poza strukturą katalogów i budową klas nie ma z nim nic wspólnego.
Struktura katalogów i plików projektu:
- Katalog „image” zawiera obrazki użyte w aplikacji.
- Katalog „data” zawiera plik *.sql, który pozwala utworzyć bazę danych.
- Katalog „ajax” zawiera pliki, które korzystają z odpowiednich kontrolerów. Każdy taki plik generuje zawartość części strony. Nie jest przy tym konieczne jej odświeżanie.
- Katalog „cache” zawiera gotowe fragmenty kodu aplikacji. Są one zapisywane jako pliki html. Potem generowane na nowo co pewien czas.
- Katalog „src” zawiera klasy używane w projekcie.
Struktura podkatalogów i plików wewnątrz katalogu „src”:
- Katalog „Config” zawiera plik konfiguracyjny. Odpowiada on za ustawienia.
- Katalog „Core” zawiera najważniejsze klasy i pliki, które są niezbędne do pracy aplikacji. Znajdują się w nich uniwersalne metody używane w całym projekcie.
- Katalog „Layout” zawiera wystrój. Znajduje się tam główny plik oraz jego składowe z np. menu, stopką czy banerem.
- Katalog „Model” zawiera pliki klas, które komunikują się z bazą danych MySQL. Metody tych klas przekazują dane z bazy do kontrolerów.
- Katalog „View” zawiera pliki poszczególnych podstron, które są dołączane do layout’u aplikacji i potem wyświetlane.
- Katalog „Controller” zawiera klasy kontrolerów. Ich obiekty są tworzone przez plik index.php w głównym katalogu.
Powyższy prosty szkielet aplikacji został napisany tak, aby się na nim wzorować, przy tworzeniu własnej strony w PHP + MySQL. Można go rozwijać zgodnie z własnymi preferencjami. Polecam go każdemu, kto zaczyna naukę programowania obiektowego w języku PHP.