• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

frage an unsere programmier-profis, was ist $this ?

Status
Für weitere Antworten geschlossen.

XraYSoLo

Senior HTML'ler
abend,

der titel sagts schon, ich sehe immer wieder in programmen mit oop oder klassen eine variable namens "$this". kann mir jemand sagen, wozu die gut ist, bzw. was die macht?
thx schonmal

Nils aka XraYSoLo
 
$this ist ein Platzhalter.
$this verweist auf die Klasse.
also
PHP:
<?php
class ABC
{
    public str;

    public __construct($str)
    {
        $this->str = $str;
    }
}

$abc = new ABC('ladida');
echo $abc->str;
?>
Nur mit $this kann man auf die klasseneigenen Member(Variablen) zugreifen. Gilt auf für Methoden(Funktionen).
Im eigentlichem Skript wird dann eine Instanz(das new) von der Klasse erzeugt. Über diese Instanz(die in einer $var gespeichert wird) wird dann auf variablen und methoden zugegriffen.
Ich hoffe, ich konnte helfen bzw es war verständlich
 
$this verweist nicht auf die klasse sondern auf die aktuelle Instanz der Klasse [objekt].

Über die Klasse kann man nur statische methoden, funktionen und eigenschaften benutzen [ mit dem Paamayim Nekudotayim operator => http://de3.php.net/manual/en/language.oop5.paamayim-nekudotayim.php ]

zugriff über klasse:

PHP:
ABC::foobar(4);
echo ABC::$var;

zugriff über objekt [Instanz]:

PHP:
$obj->foobar(4);
echo $obj->var;

Alles was als "static" deklariert ist, gehört zu der Klasse und kann nur global für die Klasse geändert werden. [mit :: ]
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben