Struktur der Klasse
Die Methoden
Eine gute Idee beim Aufbau von Klassen ist es, jeder Methode eine klar umrissene Aufgabe zu geben. Das werden wir auch hier so halten.
- Methode
Sie soll die Fehlermeldungen von $_FILES['myFile']['error'] verarbeiten.
- Methode
Sie soll relevante Sicherheitscheck durchführen, während die hochgeladene Datei im temporären Verzeichnis in der Quaränte ist.
- Methode
Sie soll die Datei sicher in das Zielverzeichnis bringen.
Die Eigenschaften
In den Eigenschaften werden die Dinge vordefiniert, die dann in verschiedenen Checks überprüft werden sollen.
- Die erlaubten MIME-Types
- Die erlaubten Datei-Endungen
- Die max. erlaubte Dateigrösse
- Die max. erlaubten Dimensionen (Breite und Höhe) des Bildes
Die Logik
Die logische Abfolge der drei Methodenaufrufe wird vom verarbeitenden Dokument aus gesteuert. Die Ziele dabei sind:
- Es soll so sein, dass jede Methode ihre Task erfolgreich absolviert haben muss, bevor die nächste zu arbeiten beginnt.
- Es soll für den User jederzeit ersichtlich sein, wo was nicht gut lief (mit klar formulierten und einfach zu verstehenden Feedbacks).
- Die Logik soll einem Menschen, der den Code meiner Klasse liest, schnell einleuchten.
Die Aufteilung der Aufgaben in den Methoden soll es auch erlauben, gezielt, kontrolliert und effizient zu entwickeln. Es soll also fortwährend möglich sein, Teilaspekte der Problemlösung zu testen.