Welche Möglichkeit mit include_once() ist besser?

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

  • Welche Möglichkeit mit include_once() ist besser?

    Hallo,

    ich schreibe mir grad eine class und bin am überlegen wie ich der class am besten ein paar Angaben übergebe.
    Am einfachsten kann man ja mit der class umgehen, wenn man das so schreibt:
    PHP-Code:
    class classA
    {

        function 
    A()
        {
            
    // In daten.inc.php ist das Array $daten mit diversen Angaben
            
    include_once("daten.inc.php");
            
            
    // code....
            
    return $daten;
        }
    }

    // und noch eine andere class im selben script
    class classB
    {

        function 
    B()
        {
            
    // In daten.inc.php ist das Array $daten mit diversen Angaben
            
    include_once("daten.inc.php");
            
            
    // code....
            
    return $daten;
        }

    Würd daten.inc.php auch nur einmal eingebunden oder bei jedem functionsaufruf? Weil ich die function ja mehrmals in einem script aufrufe.
    Oder wäre es denn so besser:
    PHP-Code:
    // In daten.inc.php ist das Array $daten mit diversen Angaben
    include_once("daten.inc.php");

    class 
    classA
    {

        function 
    A()
        {
            GLOBAL 
    $daten;
            
            
    // code....
            
    return $daten;
        }
    }


    class 
    classB
    {

        function 
    B()
        {
            GLOBAL 
    $daten;
            
            
    // code....
            
    return $daten;
        }

    ?
    Danke
    Gut geraten ist halb gewußt.

  • #2
    Was ist denn, wenn das Include nicht mehr da ist? Möchtest du es nicht lieber mit require einbinden?

    Wo/wie es eingebunden wird, hängt davon ab, ob es immer gebraucht wird oder nur in bestimmten Fällen.

    Ein immer ausgeführtes require_once zu Beginn des Scripts ist angebracht, wenn die Daten in allen Klassen schon im Konstruktor verwendet werden und keine statischen ...
    Ach um es kurz zu machen: Brauchst du die Daten immer und überall, binde sie einmal am Anfang ein. Ansonsten mit require_once überall dort, wo sie gebraucht werden.

    Kommentar


    • #3
      Was ist denn, wenn das Include nicht mehr da ist?
      Du meinst die Datei die ich einbinden möchte?
      Na ich kann auch require nehmen.

      Und nein, ich möchte die Datei nicht immer einbinden. Sie würd nur ab und zu gebraucht und nur dann will ich sie auch einbinden.
      Weiß nur nicht, ob das Array $daten was in der Datei ist, immer nur einmal in der function A() vorhanden ist oder auch in der function B().
      Mhh... Na wenn nicht mach ich erstmal so weiter und messe nachher die zeit.
      Gut geraten ist halb gewußt.

      Kommentar


      • #4
        Schreib dir in einer Klasse doch einfach eine statische methode zum laden der Daten.

        $objekt::load_data();

        Die kannst du doch DANN ausführen wenn du die Daten benötigst.
        gruss Chris

        [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

        Kommentar

        Lädt...
        X