PHP: Anleitungen und Praxiswissen | Seite 11 | mironsoft Blog
PHP
-
09.10.2025
Promises kapseln das Ergebnis einer asynchronen Operation, bevor dieses Ergebnis überhaupt vorliegt, während ein Deferred Object die Kontrolle über Auflösung und Ablehnung von außen bereitstellt. Wer die drei Zustände eines Promise, die Regeln der Verkettung und die gängigen Kombinatoren versteht, kann komplexe asynchrone Workflows in PHP strukturieren, egal ob mit ReactPHP, Amp oder einer eigenen minimalen Implementierung.
-
07.10.2025
strlen() zählt Bytes, nicht Zeichen, und liefert bei Umlauten und Unicode-Zeichen fast immer falsche Werte. Dieser Leitfaden zeigt, wie UTF-8 kodiert ist, warum mb_-Funktionen für Multibyte-Strings unverzichtbar sind und wie Truncation, Sortierung, Escaping und reguläre Ausdrücke mit Umlauten in PHP 8.4 zuverlässig funktionieren.
-
01.10.2025
Nicht jedes PHP-Projekt ist ein Monolith wie Magento. Fuer eigenstaendige Microservices mit Symfony oder Laravel reicht eine deutlich schlankere .gitlab-ci.yml, die trotzdem dieselben Grundprinzipien aus Build, Test und Deployment sauber abbildet.
-
01.10.2025
PHP-FPM verarbeitet Requests synchron und blockierend, ein Modell, das für klassische Webanwendungen bewährt ist, bei WebSockets, Queue-Workern und hoher I/O-Last aber an Grenzen stößt. Asynchrones PHP mit Swoole oder ReactPHP nutzt Event-Loops und Coroutinen, um tausende parallele Verbindungen in einem einzigen Prozess zu verwalten, ohne dabei die Sprache PHP zu verlassen.
-
27.09.2025
Einen fehlgeschlagenen Aufruf sofort und wiederholt erneut zu versuchen, klingt nach der naheliegendsten Lösung, verschärft eine Überlastsituation aber häufig erst richtig: Tausende Clients, die zeitgleich denselben gerade erholenden Dienst erneut bestürmen, erzeugen genau die Lastspitze, die den Dienst überhaupt erst in die Knie gezwungen hat. Wer Retry-Logik in PHP sauber mit Exponential Backoff, Jitter und einer klaren Unterscheidung zwischen retrybaren und nicht-retrybaren Fehlern baut, vermeidet dieses Eigentor.
-
26.09.2025
OPcache wird meist ausschliesslich als PHP-Konfiguration betrachtet, dabei haengt seine Wirksamkeit direkt vom darunterliegenden Linux-Dateisystem ab. Inode-Verhalten, Mount-Optionen und Netzwerk-Dateisysteme wie NFS koennen dieselbe OPcache-Konfiguration auf einem Server zuverlaessig und auf einem anderen unbrauchbar machen.
-
26.09.2025
Das Repository Pattern trennt Domänenlogik von der konkreten Datenzugriffstechnologie, indem eine Sammlung von Domänenobjekten hinter einem einfachen Interface verborgen wird. Wer das Repository Pattern in reinem PHP versteht, kann Geschäftslogik testen, ohne eine echte Datenbank zu berühren, und die zugrunde liegende Speichertechnologie später austauschen, ohne den restlichen Code anzufassen.
-
19.09.2025
Xdebug kann weit mehr, als eine Ausfuehrung an einer Zeile anzuhalten. Mit den Modi trace, profile, coverage und gcstats oeffnet Xdebug ein Analysefenster in den echten Laufzeitzustand eines PHP-Requests: Aufrufhierarchien mit Zeitstempeln, Cachegrind-Profile fuer Self-Time und Inclusive-Time, eine Coverage API fuer eigene Analysetools jenseits von PHPUnit und Garbage-Collection-Statistiken, die im Alltag komplett verborgen bleiben.
-
18.09.2025
Fibers geben PHP-Code die Fähigkeit, Ausführung an einer beliebigen Stelle im Aufrufstapel zu unterbrechen und später exakt dort fortzusetzen, ohne die aufrufende Logik in Callbacks oder Generatoren zu zerlegen. Dieser Artikel geht die Fiber-Klasse Schritt für Schritt durch, von start und resume über Fehlerbehandlung mit throw bis zu einem eigenen kooperativen Scheduler und den tatsächlichen Kosten bei Speicher und Stack.
-
12.09.2025
Nicht jede Frage zur Struktur eines Objekts braucht ReflectionClass. PHP bringt eine Reihe leichtgewichtiger Introspektions-Funktionen mit, von get_class über instanceof bis is_callable, die ohne den Overhead der Reflection API auskommen und für einen Großteil der alltäglichen Typprüfungen völlig ausreichen.