Wann in PHP self und wann $this verwenden? Unterschied und Beispiele
Hallo zusammen! Ich habe angefangen, OOP in PHP zu lernen und verstehe den Unterschied zwischen `self` und `$this` nicht. Beide werden scheinbar innerhalb der Klasse verwendet, um auf Eigenschaften und Methoden zuzugreifen, aber ich verwechsle sie ständig.
Hier ist ein Beispiel meines Codes:
```php
class User {
public $name = 'Gast';
public static $count = 0;
public function setName($name) {
$this->name = $name; // warum nicht self?
}
public static function getCount() {
return self::$count; // warum nicht $this?
}
}
```
Wenn ich `$this->name` schreibe, funktioniert alles. Aber wenn ich `self::$name` schreibe, kommt ein Fehler. Bei der static property ist es umgekehrt: `self::$count` funktioniert, aber `$this->count` nicht.
Ich habe das Handbuch gelesen, aber es ist zu kompliziert. Erklärt mir bitte in einfachen Worten: Wann soll ich `self::` und wann `$this->` verwenden?
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs
Testen in Kotlin: Unit, Integration, E2E – vollständiger Leitfaden
Testen in Go: Unit, Integration, E2E – vollständiger Leitfaden
Wie werde ich C#-Entwickler: Tipps und Lebenslauf für Einsteiger
JVM-Kompatibilität von Gradle: Wie man Kotlin 1.8 und Java 11 zusammenbringt