2015-10-21 2 views
-1

У меня есть этот контроллерМогу ли я получить доступ к частной переменной в методе в том же классе?

class PageController extends Controller 
{  
    private $myid;  
    public funciton index(){ 
    }  
    public function viewbyid($id){ 
     $this->myid = $id; 
    return view('someview'); 
    } 

    public function getRecord(){ 
     $id = $this->myid; 
     echo $id; //it would be null here,if I am going to access this method. 
     return view('anotherview'); 
    } 
} 
+0

Да, это то, что 'private' средства .... [RTFM] (http://www.php.net/manual/en/language.oop5.visibility .php) –

+0

, но я попробовал, он возвращает null – jemz

+0

Тогда где вы его устанавливаете? Где вы называете 'viewbyid()'? –

ответ

0

Да, вы можете получить доступ к собственной varible, в стороне класса в любом месте, используя Ваш OOPS PHP. Возможно, проблема заключается в том, что вы можете получить доступ к методу getRecord() с объектом diff.

Для Eg:

$obj=new PageController(); 
$obj->viewbyid("Test"); 
$obj->getRecord();//Then it will display the result 

Если повторная инициализация объекта или создания нового объекта, то этот объект будет перераспределять память, поэтому предыдущие сохраненные значения не будут присутствовать.

Для Eg:

$obj=new PageController(); 
$obj->viewbyid("Test"); 
$obj=new PageController();//$obj will allocate memory in diff location so your previous values will be initialized to default. 
$obj->getRecord();//Then it will display result as null 
Смежные вопросы