Если var
является публичной вы можете сделать это:
$hello->var = $value;
$value = $hello->var;
Как правило, вы не хотите, чтобы получить доступ к членам класса напрямую. Вы могли бы сделать методы получения и установки:
class hello{
private $var;
...
function getVar(){
return $var;
}
function setVar($value){
$var = $value;
}
}
Тогда вы можете сделать это:
$hello->getVar();
$hello->setVar($newVarValue);
PHP также имеет магические функции, которые позволяют __get() and __set() для доступа к недоступным членов. Это в основном то же самое, что и геттер и сеттер, но вы можете уйти с одной функцией вместо нескольких функций для каждого члена (это может стать беспорядочным, хотя если не поддерживать должным образом).
Так что в вашем классе вы можете сделать это:
class hello{
private $var;
...
function __get($name){
if($name == 'var')
return $var;
}
function __set($name, $value){
if($name == 'var')
$var = $value;
}
}
, но вы все еще можете получить доступ к членам, как это:
$hello->var = $value;
$value = $hello->var;
даже если $var
является частным.