Facebook
Twitter
Google+
Kommentare
4

Typehinting für einfache Typen

Timo hatte sich ja in einem seiner Kommentare über das fehlende Type Hinting Feature für einfache Typen (integer, boolean, string) ausgelassen. Aus der Sicht eines „ehemaligen“ Java Entwicklers ist dies natürlich ein no go. Ob diese Einschränkung nun sinnvoll ist oder nicht, will ich hier nicht diskutieren (dafür werde ich einen eigenen Beitrag verfassen), aber wie man um das Problem herum kommt, davon will ich hier erzählen.

Da ich gerade frisch von der PHP Konferenz komme und Max Horvárth dort als Speaker aktiv war, habe ich es mir nicht nehmen lassen, mal seinen Blog zu überfliegen. Und was habe ich da gefunden? Einen Ansatz, um PHP dazu zu bringen, dass Typehinting Verhalten so zu ändern, dass es ohne Probleme auch mit Integer und Konsorten funktioniert. Die Lösung ist Open Source und kann auf seiner Webseite betrachtet und runter geladen werden. Was dabei noch wichtig zu erwähnen ist, ist, dass seine Lösung ganz ohne eine Erweiterung von PHP funktioniert. Ihr werdet euch jetzt fragen, wie das möglich ist. Ganz einfach Horvárth verwendet dazu einen selbst geschriebenen Error Handler, den er einfach im Code registriert. Dieser reagiert auf Fehler, die auftreten, wenn zum Beispiel Integer oder String als Klassen nicht gefunden werden. Der Handler reagiert dann mit einer Prüfung der Parameter und gibt einen Error aus, wenn die Typen nicht stimmen. Wenn der Typ der Variablen gültig ist, dann darf das Programm weiterlaufen. So einfach dieser Ansatz ist, so genial ist er meiner Meinung nach auch. Wenn ich ehrlich bin, bin ich echt sauer, dass ich nicht selber darauf gekommen bin. Aber naja, Ehre, wem Ehre gebührt. Ich werde mich auf jeden Fall die nächste Tage mal hinsetzten und mir die Klassen von PHPTypeSafe genauer ansehen. Vielleicht bekomme ich Max ja auch dazu, ein paar Worte darüber zu verlieren.

Was ich vielleicht noch dazu sagen muss, über die genaue Funktionsweise dieser Lösung weiss nicht noch nicht Bescheid, wenn es also ein wenig komplizierter ist, als ich gerade beschrieben habe, dann werde ich mich sobald ich es installiert und ausprobiert habe hier entschuldigen und mich auch berichtigen

Über den Autor

Nils Langner

Nils Langner ist der Gründer von "the web hates me" und auch der Hauptautor. Im wahren Leben leitet er das Qualitätsmanagementteam im Gruner+Jahr-Digitalbereich und ist somit für Seiten wie stern.de, eltern.de und gala.de aus Qualitätssicht verantwortlich. Nils schreibt seit den Anfängen von phphatesme, welches er ebenfalls gegründet hat, nicht nur für diverse Blogs, sondern auch für Fachmagazine, wie das PHP Magazin, die t3n, die c't oder die iX. Nebenbei ist er noch ein gern gesehener Sprecher auf Konferenzen. Herr Langner schreibt die Texte über sich gerne in der dritten Form.
Kommentare

4 Comments

Leave a Comment.

Link erfolgreich vorgeschlagen.

Vielen Dank, dass du einen Link vorgeschlagen hast. Wir werden ihn sobald wie möglich prüfen. Schließen