Prosty szkielet aplikacji w PHP i MySQL

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:

  1. Katalog „image” zawiera obrazki użyte w aplikacji.
  2. Katalog „data” zawiera plik *.sql, który pozwala utworzyć bazę danych.
  3. 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.
  4. Katalog „cache” zawiera gotowe fragmenty kodu aplikacji. Są one zapisywane jako pliki html. Potem generowane na nowo co pewien czas.
  5. Katalog „src” zawiera klasy używane w projekcie.

Struktura podkatalogów i plików wewnątrz katalogu „src”:

  1. Katalog „Config” zawiera plik konfiguracyjny. Odpowiada on za ustawienia.
  2. 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.
  3. Katalog „Layout” zawiera wystrój. Znajduje się tam główny plik oraz jego składowe z np. menu, stopką czy banerem.
  4. Katalog „Model” zawiera pliki klas, które komunikują się z bazą danych MySQL. Metody tych klas przekazują dane z bazy do kontrolerów.
  5. Katalog „View” zawiera pliki poszczególnych podstron, które są dołączane do layout’u aplikacji i potem wyświetlane.
  6. 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.