Avatar ·

Was ist der Unterschied zwischen public, private und protected in PHP?

Hallo zusammen! Ich habe gerade mit dem Studium der objektorientierten Programmierung in PHP begonnen und kann den Unterschied zwischen den Zugriffsmodifikatoren public, private und protected nicht verstehen. Ich habe die Dokumentation gelesen, aber in der Praxis bin ich trotzdem verwirrt.\n\nHier ist eine einfache Klasse, die ich habe:\n\n```php\nclass Car {\n public $color = 'red';\n private $engineStatus = 'off';\n protected $fuelLevel = 100;\n \n public function startEngine() {\n $this->engineStatus = 'on';\n }\n \n private function checkFuel() {\n return $this->fuelLevel > 0;\n }\n \n protected function refuel($liters) {\n $this->fuelLevel += $liters;\n }\n}\n```\n\nIch erstelle ein Objekt:\n\n```php\n$car = new Car();\necho $car->color; // Funktioniert\necho $car->engineStatus; // Fehler!\n$car->refuel(20);\n