-
Regular Expression zur Überprüfung von URIs gemäß RFC 3986
RFC 3986 definiert das Format von URIs, eingeschlossen den Unterformaten URL und URN. Das RFC-Dokument liefert selbst keinen Regulären Ausdruck im PCRE-Stil aus, allerdings eine zweiseitige Defintion in der Augmented Backus-Naur Form. Mithilfe dieser kann man selbst einen regulären Ausdruck erstellen.
-
Liste mit gültigen und ungültigen URIs
Da ich im Internet keine Liste mit ungültigen URIs (gültige URIs findet man natürlich in allerhand Beispielen) finden konnte, habe ich mir zu Testzwecken selbst eine Liste erstellt, die verschiedene Verstöße gegen RFC 3986 beinhaltet.
-
Wie PHP Iterator behandelt
In PHP laufen Iterator in foreach-Schleifen etwas anders ab als in Java. Dies liegt an der Methode valid(), welche im Gegensatz zum Java-Äquivalent hasNext() nicht vor dem Sprung zum nächsten Element, sondern erst danach ausgeführt wird. In eine While-Schleife umgewandelt, sieht die Verarbeitung eines Iterators innerhalb von foreach-Konstrukten folgendermaßen aus:
-
Arrays in foreach on-the-fly verändern?
PHP bietet bei foreach-Schleifen keine Unterstützung für eine Veränderung von Arrays on-the-fly innerhalb der Schleife selbst. Es ist lediglich möglich, die veränderten Arrays nach der Schleife zu verwenden. Allerdings gibt es verschiedene Möglichkeiten, dieses Problem zu umgehen.