Я привык делать почти все переменные моего класса закрытыми и создавать функции-оболочки, которые их получают / устанавливают:
class Something{
private $var;
function getVar(){
$return $this->var;
}
}
$smth = new Something();
echo $smth->getVar();
Я вижу, что многие люди делают это, поэтому я закончил делает то же самое :)
Есть ли какое-то преимущество в использовании их таким образом по сравнению с:
class Something{
public $var;
}
$smth = new Something();
echp $smth->var;
?
Я знаю, что закрытые означает, что вы не можете получить к ним доступ напрямую вне класса, но мне это не кажется очень важно, если переменная доступна отовсюду ...
Есть ли другие скрытые преимущества, которые мне не хватает для частных переменных?