phpbar.de logo

Mailinglisten-Archive

[php] error_reporting und assoziative Arrays

[php] error_reporting und assoziative Arrays

Ralf Geschke php_(at)_phpcenter.de
Mon, 11 Mar 2002 17:07:34 +0100


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