Mailinglisten-Archive |
Hallo ! Ich frimelte gerade ein wenig mit error_reporting herum, da ich nicht sicherstellen kann, auf die Parameter des spaeteren Servers Einfluss zu haben, das Skript letztlich aber natuerlich keine Fehlermeldungen anzeigen soll. Daher spasseshalber error_reporting auf E_ALL gesetzt, so dass auch alle Warnungen angezeigt werden. Ein wenig unlogisch (wenngleich durchaus nett) erscheint mir die Behandlung von assoziativen Arrays - einerseits innerhalb von PHP, andererseits von der HTML-Seite aus betrachtet. Kleines Beispiel, damit Ihr seht, was ich meine: Zeile 5 $a['bla'] = "sülz"; 6 $a[hallo] = "dingens"; Warning: Use of undefined constant hallo - assumed 'hallo' in /home/geschke/i-fabrik/www/test/indtest.php on line 6 Ok, bis dahin klar - PHP will die Hochkommata, nimmt diese Eingabe nur mit Warnungen an, macht dennoch alles richtig. :) Wenn ich nun innerhalb eines Formulars folgendes schreibe, erhalte ich nach dem Absenden jedoch keine Warnung: <input type="text" name="data[hallo]"> <input type="text" name="data[nochmal]"> PHP uebernimmt diese Eingaben in $_POST['data'] ohne zu murren. Hingegen bei 14 $data = $_POST['data']; 15 print "test hallo: " . $data[hallo] . "\n"; 16 print "test nochmal: " . $data['nochmal'] . "\n"; wird wieder eine Warnung angezeigt: Warning: Use of undefined constant hallo - assumed 'hallo' in /home/geschke/i-fabrik/www/test/indtest.php on line 15 Also wurde name="data[hallo]" zu $data['hallo']. Wie erwaehnt - dieses Verhalten ist durchaus nett, man spart sich einige Hochkommata... Bis jetzt hatte ich die error_reporting-Geschichte eigentlich immer ignoriert. ;-) Kleine Frage am Rande: Bleibt das Verhalten so, also dass die HTML-Seite Namen ohne Hochkommata entgegennimmt und dennoch assoziative Arrays daraus bastelt? Beste Gruesse, Ralf -- : www : http://www.bttr.org : mail: ralf_(at)_bttr.org : Eine Site rund um MySQL : http://www.bttr.org/mysql/ : Privacy now! My Public Key : http://www.bttr.org/geschke.asc
php::bar PHP Wiki - Listenarchive