Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit XAMPP und OOP-Funktionen

Einklappen

Neue Werbung 2019

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

  • Problem mit XAMPP und OOP-Funktionen

    Guten Tag zusammen !

    Ich hab vor ein paar Jahren nen kleines Script geschrieben, welches auf dem Webserver (PHP 4.4.9 auf nem Linux System) immernoch einwandfrei funktioniert.
    Wegen einiger Änderungen wollte ich es nun auch wieder Lokal (neues XAMPP mit PHP 5.3.1 und Win) zum testen laufen lassen. Nur macht mir jetzt eine Klasse mit den OOP-Funktionen __get() und __set() probleme:


    Ich schreibe zuerst die Ergebnisse einer MySQL Abfrage in ein Array:

    PHP-Code:
    $SitzplatzTpl->sitzplatz $CDB->fetcharray("SitzplatzinfoGET"); 
    Das funktioniert noch einwandfrei, die Daten werden der Funktion __set() der Tpl-Klasse übergeben.
    Anschließend übergebe ich allerdings noch weitere daten an genau das Array:

    PHP-Code:
    $SitzplatzTpl->sitzplatz["sitzplatzoutput"] = "..."
    Diese werden jetzt aber nicht mehr an __set(), sondern an __get() übergeben.

    Wieso? Gab es diesbezüglich irgendwelche Änderungen beim Versionswechsel von PHP4 zu PHP5 oder könnte es an der Config liegen?


    Schoneinmal vielen Dank für euren Mühen!

  • #2
    Ja, ist ja auch logisch - Du greifst im ersten SChritt über __get auf die Variable zu und auf den Rückgabewert wendest Du die Zuweisung an - Davon kriegt die Klasse bzw. __set nichts mehr mit. So hier geht es aber (Wenn auch riskant):
    PHP-Code:
    class Klasse {
            private 
    $va = array(124);
            
            public function &
    __get($k) {
                return 
    $this->va;
            }
            
            public function 
    __set($k$v) {
                
    $this->va $v;
            }
        }
        
        
    $obj = new Klasse();
        
        
    $obj->va[] = 5;
        
        
    var_dump($obj->va); 

    Kommentar

    Lädt...
    X