Волшебный метод __set()

Люди добрые, помогите поставить точку в вопросе. Как и когда он работает? Если я все правильно понимаю, с его помощью можно контролировать любые передаваемые объекту данные, т.е. грубо говоря:

PHP:
class awesome {
    
    public $var;
    
    function __set($name, $value) {
        
        $this->name = strip_tags($value);
        
    }
    
}

$txt = "<strong>Привет, Мир!</strong>";
$obj = new awesome();
$obj->var = $txt;
echo $obj->var;

должен вывести "Привет, Мир!" без тегов, но в реальности ничего такого не происходит. Почему?

P.S. Гугл слишком противоречив.
 
Потому что для того, чтобы __set() сработал, $var вообще не должно быть.
 
Неужели даже $this->name работает вместо положенного по уставу $this->$name ?
 
Сверху