Set-funktion

123123123

Erfahrenes Mitglied
Hallo!!
Kann mir vielleicht jemand erklären was die SET-Funktion eigentlich macht, also jetzt ohne die Verbindung mit GET? Habe mich im Internet erkündigt, aber nicht so richtig verstanden was es macht!

Danke!:)
 
Also die wird auch sowie Getter und Setter- Funktion genannt! Die benutzt man ja, wenn du Klassen definiert hast und halt mit "function" arbeitest! Aber man kann die auch eineln benutzen, jetzt wollte ich wissen wie und warum! :)
 
Ah, okay. Da du GET groß geschrieben hattest hatte ich da eher an das HTTP GET gedacht und war verwirrt. Also, ein Erklärungsversuch.

Alle Attribute einer Klasse sollten privat sein, um die größtmögliche Kapselung zu erreichen. Über die set-Methoden kann man dann immer noch die Werte ändern, dabei aber zum Beispiel gleichzeitig eine Validierung vornehmen. Wenn z.B. ein Ganzzahlwert nur zwischen 1-6 sein darf, kann man das dort überprüfen und bei falschen Parametern das Speichern verweigern.

Wie? So:

PHP:
class Testclass {
    private $myInt;
    
    public function setMyInt($val) {
        if (!is_int($val)) throw new Exception('$val musst Integer sein!');
        if ($val < 1 || $val > 6) throw new Exception('$val muss zwischen 1 und 6 sein (ist ' . $val . ')');
        
        $this->myInt($val);
    }
}
 
Zurück