Diese Dokumentation bietet eine umfassende Übersicht über das PHP ORM React Framework (Phorm RF) mit detaillierten Beschreibungen aller Funktionen und praktischen Beispielen.
- Controllers - Alle Controller-Typen und deren Verwendung
- Services - Verfügbare Services (Doctrine, Cache, Logger, etc.)
- Handlers - Session, Flash Messages, Navigation, etc.
- Annotations - Routing, Navigation und Zugriffskontrolle
- Entities - Doctrine ORM Entities
- Einfache Webseite - Öffentliche Seiten erstellen
- REST API - API-Endpunkte implementieren
- Admin Dashboard - Authentifiziertes Admin-Panel
- Vollständige CRUD-Anwendung - Komplettes Beispiel
- PHP 7.4 oder höher
- Composer
- Node.js und Yarn
- MySQL, PostgreSQL oder SQLite
# Projekt erstellen
composer create-project dwwe/php-orm-react-framework mein-projekt
# In das Projektverzeichnis wechseln
cd mein-projekt
# Node.js-Abhängigkeiten installieren
yarn install
# Assets-Abhängigkeiten installieren
cd assets
yarn install
cd ..# Konfigurationsdateien kopieren
cp config/default-config.php.dist config/default-config.php
cp config/portal-config.php.dist config/portal-config.phpDie Hauptkonfiguration befindet sich in config/default-config.php:
<?php
return [
'debug_mode' => true, // Entwicklungsmodus aktivieren
// Datenbankverbindung
'connection_option' => 'default',
'connection_options' => [
'default' => [
'driver' => 'pdo_mysql',
'host' => 'localhost',
'dbname' => 'mein_projekt',
'user' => 'root',
'password' => '',
'charset' => 'utf8mb4'
]
],
// Cache-Konfiguration
'cache' => [
'system' => [
'driver' => 'Files',
'path' => 'data/cache/system'
]
]
];projekt/
├── assets/ # Frontend-Assets (React, CSS, JS)
│ ├── react/ # React-Komponenten
│ └── scss/ # SCSS-Stylesheets
├── config/ # Konfigurationsdateien
├── data/ # Daten und Cache
│ ├── cache/ # Cache-Dateien
│ └── logs/ # Log-Dateien
├── inc/ # Include-Dateien
├── locale/ # Übersetzungsdateien
├── log/ # Zusätzliche Logs
├── modules/ # Anwendungsmodule
│ ├── ExampleModule/ # Beispielmodul
│ └── MeinModul/ # Eigene Module
├── system/ # Framework-Kern
│ ├── Annotations/ # Annotation-Klassen
│ ├── Controllers/ # Basis-Controller
│ ├── Entities/ # System-Entities
│ ├── Handlers/ # Handler-Klassen
│ ├── Helpers/ # Hilfsklassen
│ ├── Managers/ # Manager-Klassen
│ ├── Services/ # Service-Klassen
│ └── Traits/ # PHP Traits
├── templates/ # Twig-Vorlagen
├── views/ # System-Views
├── composer.json # PHP-Abhängigkeiten
├── package.json # Node.js-Abhängigkeiten
└── index.php # Einstiegspunkt
Das Framework folgt dem Model-View-Controller-Muster:
- Model - Doctrine ORM Entities für Datenbankzugriff
- View - Twig-Templates für die Ausgabe
- Controller - Logik und Request-Handling
Module sind eigenständige Anwendungsteile mit eigenen:
- Controllers
- Entities
- Views
- Assets
modules/MeinModul/
├── src/
│ ├── Controllers/
│ ├── Entities/
│ └── Repositories/
└── views/
└── MeinController/
└── indexAction.tpl.twig
Das Routing erfolgt über URL-Parameter:
index.php?module=meinModul&controller=mein&action=liste
Wird aufgelöst zu:
- Modul:
MeinModul - Controller:
MeinController - Action:
listeAction()
- Lesen Sie die API-Dokumentation für Details zu Controllers
- Folgen Sie einem Beispielprojekt
- Studieren Sie das TodoModule als Referenz