Kernkonzepte
1
Server-seitig – läuft auf Webservern, generiert HTML pro Request
2
Dynamisch typisiert – Typen zur Laufzeit, optional mit Type-Hints prüfbar
3
OOP & funktional – Klassen, Interfaces, Traits, Enums, First-Class-Funktionen
4
Composer – moderner Paket-Manager für Dependencies und Autoloading
Datentypen
intGanze Zahlen
floatKommazahlen
stringText in '' oder ""
booltrue / false
arrayListe oder Map
objectKlassen-Instanz
nullkein Wert
callableFunktion / Closure
Hello World
<?php
declare(strict_types=1);
function greet(string $name): string {
return "Hallo, $name!";
}
echo greet('Marek');
// Hallo, Marek!
declare(strict_types=1);
function greet(string $name): string {
return "Hallo, $name!";
}
echo greet('Marek');
// Hallo, Marek!
Moderne vs. Legacy
Modern (8.x)
- strict_types
- Readonly Properties
- Enums & Match
- Named Arguments
- Promoted Constructor
- Composer + PSR
Legacy (5.x)
- magic_quotes
- register_globals
- mysql_* Funktionen
- kein Typ-System
- include/require Chaos
- Spaghetti-Code
Ökosystem
Laravel
Full-Stack Framework
Symfony
Enterprise-Framework
Composer
Paket-Manager
PHPUnit
Testing-Framework
PHPStan
Static Analysis
Shopware
E-Commerce-Plattform
Einsatzgebiete
W
Web-Backends – REST/GraphQL APIs, MVC-Apps mit Laravel oder Symfony
C
CMS – WordPress, Drupal, TYPO3 für Content-Management
E
E-Commerce – Shopware, Magento, WooCommerce
$
CLI-Tools – Symfony Console, Laravel Artisan für Automation