Существует тысячи примеров php __get и __set, к сожалению, никто на самом деле не говорит вам, как их использовать.Использование родовых геттеров и сеттеров с php
Итак, мой вопрос: как я на самом деле вызываю метод __get и __set из класса и при использовании объекта.
Пример кода:
class User{
public $id, $usename, $password;
public function __construct($id, $username) {
//SET AND GET USERNAME
}
public function __get($property) {
if (property_exists($this, $property)) {
return $this->$property;
}
}
public function __set($property, $value) {
if (property_exists($this, $property)) {
$this->$property = $value;
}
return $this;
}
}
$user = new User(1, 'Bastest');
// echo GET THE VALUE;
Как бы я установить значения в конструкторе, и как бы я получить значение в // echo GET THE VALUE;
Я не уверен, что вы читали, но предлагаю вам прочитать [официальная страница руководства] (HTTP: // www.php.net/manual/en/language.oop5.overloading.php#object.get) - поскольку, очевидно, вы не понимаете, для каких целей нужны '__set()' и '__get()'. –
в вашем сеттере, $ this -> $ property = $ value; должно быть $ this -> $ property = $ value [0]; –