Hello,
if ($_*)
bzw. eben der sofortige Zugriff mit count() auf die Arrays.Warum nimmst du nicht empty()?
Das ist in diesem Fall tatsächlich zu überlegen, da hier ja keine Leerzeichen oder 0 als Inhalt zulässig sind. Es ist auch sprachlich "selbstdokumentierender".
Bleibt nur noch die Frage, welche Injection noch möglich wäre, wenn Register_Globals noch eingeschaltet ist. Könnte man z.B $_FILES dann von außen einschleusen? Kann ein beliebiges Typformat[1] sein. Wenn es zum Scriptstart verlässlich angelegt wird, müsste es ja jede Einschleppung von außen überschreiben, oder? Damit wäre dann auch immer der Datentyp "Array" sichergestellt.
Ich kann gerade nicht testen...
[1] Gibts ein besseres Wort dafür? soll heißen: verlustfrei umwandelbar in den Zieltyp
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg