Welche Rolle spielen Getter und Setter in PHP DTO-Klassen und wie können sie sinnvoll genutzt werden, um OOP-Prinzipien zu respektieren?

Getter and setter methods are important in PHP DTO (Data Transfer Object) classes as they allow controlled access to the class properties. Getters are used to retrieve the values of properties, while setters are used to set the values of properties. By using getters and setters, we can ensure encapsulation and data integrity, as well as adhere to the principles of object-oriented programming.

class UserDTO {
    private $firstName;
    private $lastName;

    public function getFirstName() {
        return $this->firstName;
    }

    public function setFirstName($firstName) {
        $this->firstName = $firstName;
    }

    public function getLastName() {
        return $this->lastName;
    }

    public function setLastName($lastName) {
        $this->lastName = $lastName;
    }
}

$user = new UserDTO();
$user->setFirstName('John');
$user->setLastName('Doe');

echo $user->getFirstName() . ' ' . $user->getLastName(); // Output: John Doe