Globale Klasseninstanz in Funktion verwenden

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

  • Globale Klasseninstanz in Funktion verwenden

    Simple Frage, wie kann ich eine Klasse (Instanz/Objekt) innerhalb einer Funcktion benutzen?
    Kurzes Beispiel:
    PHP-Code:
    <?
        include ('some.class.inc');
        $someclass = new some_class;
        function test () {
            echo $someclass->somefunction(); // Hier ist die Klasse nicht definiert
        }
        echo $someclass->somefunction(); //Hier ist sie definiert
    ?>
    MfG,
    yaXay

  • #2
    Ts..ts... "Stichwort: global" im Manual nachlesen

    Kommentar


    • #3
      Re: Globale Klasseninstanz in Funktion verwenden

      Original geschrieben von yaXay
      Simple Frage, wie kann ich eine Klasse (Instanz/Objekt) innerhalb einer Funcktion benutzen?
      warum packst du das nicht selber in eine class rein?
      PHP-Code:
      <?
          include ('some.class.inc');

          class working
          {
              var $someclass = NULL;
              
              function working()
              {
                  $this->someclass = &new some_class();
              }
              
              function test() {
                  return $this->someclass->somefunction();
              }
          }        
          
          $cl = &new working();
          echo $cl->test();

      ?>
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        um asp2php's anmerkung nomma zu verdeutlichen *g*

        PHP-Code:
        <?
            include ('some.class.inc');
            $someclass = new some_class;
            function test () {
                global $someclass; // Mit diesem Eintrag gehts !!!
                echo $someclass->somefunction(); // Hier ist die Klasse nicht definiert
            }
            echo $someclass->somefunction(); //Hier ist sie definiert
        ?>
        Einfach diesen eintrag vornehmen an der Stelle, wo ich ihn geparkt hab, dann geht's!
        global $someclass;
        C-Ya Toby

        Kommentar


        • #5
          Ich verstehe manchmal wirklich nicht. Die Leute programmieren Klassen und beherrschen noch nicht mal Grundlagen

          Kommentar


          • #6
            ach, asp... Du wirst die Leute in diesem Forum noch einige male nicht verstehen.

            Kommentar

            Lädt...
            X