• Schönen Sonntag! Weiß jemand von euch zufällig wieso das nicht funktioniert:

    <?php

    global $items;


    function register_item($item){

    $items[$item] = "standard";
    }

    register_item("kaese");

    echo "erwarte standard: ";
    echo $items['kaese'];

    ?>

    ------

    die ausgabe sollte sein: "erwarte standard: standard".
    ps: bin gerade draufgekommen, wenn man in die funktion "global $items;" einfügt, es funktioniert. aber wieso?

    hm..

  • Ich bin kein Experte von globalen Variablen in PHP, aber wenn du's in der Funktion nicht auch mit global klassifizierst, ist die Variable lokal, sonst könntest in keiner Funktion mehr Variablen mit Namen $items verwenden.

    640K ought to be enough for anybody. :eek2:

  • danke, sowas ähnliches habe ich auch vermutet. (bin grad am einlesen). aber als java-rianer verstehst du sowas halt nicht gleich ;)

    weil, wenn du in einer funktion eine variable definierst die global schon existiert, wird in java die funktionslokale verwendet, ansonsten die globale. in php geht das nicht..

    naja!

    nachtrag: http://www.jakober.ch/php/php_variable.php jetzt ist alles klar.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!