Ваша непосредственная проблема заключается в том, что вам придется использовать "username"
вместо неопределенного $username
при передаче имени свойства в функцию.
Однако это не то, как работают магические геттеры и сеттеры впервое место.Вы должны установить, используя $user->username = "someuser";
, который автоматически вызовет сеттер:
$user=new UserInfo;
$user->username = "someuser";
echo $user->username;