bigo: unterschied $_POST['var'] & &_POST[var]

hallo,

kann mir jemand sagen was es für einen unterschied zwischen

$_POST['var'] &

&_POST[var]

gibt,

muß der inhalt eventuel ein string sein bei Hochkommas ???

danke

bigo

  1. hi,

    kann mir jemand sagen was es für einen unterschied zwischen
    $_POST['var'] &
    &_POST[var]
    gibt,

    einaml verwendest du einen string als index ('var'), und einmal eine konstante (var). wenn du aber keine konstante namens var definiert hast, ist das natürlich falsch.

    muß der inhalt eventuel ein string sein bei Hochkommas ???

    durch die hochkommas _wird_ die zeichenkette val zu einem string.

    gruss,
    wahsaga

    1. hallo und danke

      einaml verwendest du einen string als index ('var'), und einmal eine konstante (var). wenn du aber keine konstante namens var definiert hast, ist das natürlich falsch.

      verstehe...
      also sollte im script (formularfelder) eingabe etc..
      (auch wenn es scheint daß es ohne Hochkommas auch klappt)

      $_POST[' var ']

      bevorzugt werden..sofern nicht expliziet Konstanten benötigt werden ?

      ist das richtig ?

      danke
      gr bigo

      1. hi,

        verstehe...
        also sollte im script (formularfelder) eingabe etc..
        $_POST[' var ']
        bevorzugt werden..sofern nicht expliziet Konstanten benötigt werden ?

        ja.

        (auch wenn es scheint daß es ohne Hochkommas auch klappt)

        php kann an dieser stelle "erraten", dass du dich nur vertan hast, und einen textstring statt einer konstanten meintest.

        ob du diesbezüglich eine warnmeldung angezeigt bekommst, hängt davon ab, wie du den error-level in der php.ini eingestellt hast - wenn diese einstellung sehr "scharf" gesetzt ist, dann bekommst du jedes mal eine sog. "notice", die ungefähr lautet:
        use of undefinded constant var - assumend 'var'.

        zu deutsch - es wird eine nicht definierte konstante namens var verwendet - stattdessen wird angenommen, dass 'var' gemeint sein sollte.

        gruss,
        wahsaga

  2. Hallo,

    kann mir jemand sagen was es für einen unterschied zwischen
    $_POST['var'] &  &_POST[var] gibt,

    ^^^ was ist das fuer eine Schreibweise?
    Da Du es im Subject _und_ im Text so schreibst, vermute ich,
    dass es Absicht ist.

    Falls Du meinst $_POST['var'] vs. $_POST[var]:
    Nuer das erste ist valide, es sei denn, Du hast eine
    Konstante namens var definiert.
    http://www.php.net/manual/de/language.types.array.php#language.types.array.donts

    Im englischen Original hat es noch einen wichtigen Hinweis
    zu einer Ausnahmeregelung:

    http://www.php.net/manual/en/language.types.array.php#AEN3791
    <ZITAT>
    Note: To reiterate, inside a double-quoted string, it's
    valid to not surround array indexes with quotes so
    "$foo[bar]" is valid.
    </ZITAT>

    (Natuerlich waere "$foo['bar']" auch nicht falsch, aber
    es hat im PHP-Manual einige Beispiele in der obigen
    Schreibweise, und ich war schon mal drauf und dran,
    einen Kommentar/Bug-Report zu schreiben, bis ich diese
    Ausnahmeregelung fand...)

    mfg
    Thomas

    1. hi,

      kann mir jemand sagen was es für einen unterschied zwischen
      $_POST['var'] &  &_POST[var] gibt,
                          ^^^ was ist das fuer eine Schreibweise?

      jojo, meinte natürlich $_POST[var]

      danke für die links

      gr
      bigo