Hi,
Die Risiken und Ungereimtheiten der Sprache sind damit noch nicht beseitigt.
Wo liegt denn hier ein Risiko?
allgemein:
- Das Environment wird in Variablen mit vorher unbekannten Namen gespeichert (z.B. $DOCUMENT_ROOT).
- Request-Parameter werden in Variablen mit vorher unbekannten Namen gespeichert (z.B. "...?bla=blub" in $bla).
- Was passiert bei "...?DOCUMENT_ROOT=bla"?
Weitere Unstimmigkeiten, wie z.B. die Möglichkeit, mit fopen() auch Ressourcen anzufordern (natürlich nicht schreibend), POP3- und NNTP(!)-Funktionen im IMAP-Modul, ein wilder Mischmasch aus C-Funktionsnamen und hochsprachenüblichen Namen (strstr kontra join), preg und ereg usw., komplettieren das Bild: PHP ist schlicht und ergreifend unausgegoren, unausgereift, undurchdacht. Was sich da neben solch offensichtlichen Lücken wie den dynamischen Variablennamen noch alles versteckt, will ich ehrlich gesagt gar nicht wissen.
Auch wenn Du meinst es ist ein Bug, ich denke selbst da hat sich jemand mal was bei gedacht!
Ja. Der Bug _sind_ diese Überlegungen. Es ist schlichtweg Schwachsinn, die Nomenklatur von der verwendeten Programmiersprache abhängig zu machen - überall sonst ist es schon immer möglich gewesen, mehrere <input name="wiederholter_name"> anzugeben, ohne dass es Probleme gegeben hat, und es macht auch keinen Sinn, hier eine Vorgabe oder gar Einschränkung zu machen.
Cheatah