Ankündigung

Einklappen
Keine Ankündigung bisher.

Vars mit ihrem "echten Namen" an Funktion übergebe

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Vars mit ihrem "echten Namen" an Funktion übergebe

    Hallo Forum!

    Ich hab mir eine Funktion geschrieben welche Dateien included und ausführt. Nun hab ich aber das Problem das wenn ich in Datei X die Variable a definiert hab, dass die dann aufgrund der funktion nicht in Datei X existiert. Ein Beispiel:
    Code:
    X.php
    ====
    
    <?php
    
    $a=1;
    $b=2;
    func("Y.php");
    
    ?>
    Code:
    Y.php
    ====
    
    <?php
    
    echo $a;
    echo $b;
    
    ?>
    Das geht natürlich nicht. Nun wollte ich die in der Datei benötigen Variablen in der Funktion übergebe allerdings sollen diese mit ihrem übergebenem Namen übergeben werden. Dazu hab ich das probiert:
    PHP-Code:
    <?php

    function func($file,$vars) {
        
    $vars explode(",",$vars);
        for(
    $i=0$i<count($vars); $i++) {
            
    // Hier solle dann jede Variable "rekonstruiert" werden
        
    }
        
    // Hier geht meine Funktion weiter
    }

    // Auruf: func("Y.php","$a,$b");

    ?>
    Ich hoffe ihr könnt mir folgen und mir weiter helfen!
    Danke

  • #2
    Dein erstes Beispiel geht natürlich unverändert doch.
    Alle Skripte einer Ausführungsinstanz teilen sich die selben Namensräume - es ist ein php Interpreter, der da läuft; nicht dateiweise getrennt.

    http://www.php.net/manual/en/languag...bles.scope.php

    Kommentar


    • #3
      Zitat von Bruchpilot
      Dein erstes Beispiel geht natürlich unverändert doch.
      naja, unverändert wird es nicht gehen, aber wenn er func durch include erstetzt, dann geht es, und deswegen sehe ich auch keinen wirklichen grund, warum man sowas umsständliches draus machen sollte....

      Kommentar


      • #4
        Stimmt, an der Stelle wollte ich wohl ein include() lesen

        Kommentar


        • #5
          Ja die Funktion ist natürlich in einer externen Datei.

          Kommentar


          • #6
            Auch dann hilft http://www.php.net/manual/en/languag...bles.scope.php weiter.
            In diesem Fall ist der Hinweis auf das Einbinden anderer Dateien sogar überflüssig.

            Kommentar

            Lädt...
            X