2015-09-16 2 views
0

У меня есть класс PHP и переменные следующим образом:Доступа к переменному внутри класса из вне класса

class Test(){ 
function fun(){ 
$a= 0; 
$b = 5; 
$sum = $b+c; 
return sum; 
} 
} 

я могу получить доступ к $sum извне следующим образом:

$obj = new Test(); 
echo $obj->fun(); 

Как я могу получить доступ к значению $b извне?

+0

Возможный дубликат [Доступ к переменным и методам вне определений классов] (http://stackoverflow.com/questions/1415577/accessing-variables-and-methods-outside-of-class-definitions) – Sujay

ответ

1

Для этого сценария вы можете использовать свойства объекта,

Определить открытую переменную внутри класса,

class Test(){ 

    public $b; 

    function fun(){ 
     $a= 0; 
     $this->b = 5; 
     $sum = $this->b+c; 
     return $sum; 
    } 
} 

$obj = new Test(); 
$b = $obj->b; // here null 
echo $obj->fun(); 
$b = $obj->b; // here 5 
1

Вам нужно сделать $b как общественный DataMember, чтобы иметь возможность доступа к нему со стороны

class Test() { 
    public $b = 5; 

    public function fun(){ 
     $a= 0; 
     $sum = $this->b + c; 

     return sum; 
    } 
} 

Теперь у вас есть доступ к $b делая это

$obj = new Test(); 
echo $obj->b;