У меня есть функция, которая позволяет получить доступ к тому, что я никогда не видел перед переменной.Проблема с переменной переменной public
нормальная функциональность:
$api = api_client($special_data);
$data = $api('get','something.json'); // notice $api() not a mistake
Проблема с этим выше примере является то, что я createing переменного $ апите в каждой функции/методе моего контроллера. Я хотел бы сделать что-то вроде этого:
public $api;
public function somepage(){
$special_data = get_special_data_from_this_method();
$this->api = api_client($special_data);
}
public function anotherpage(){
$data = $this->api('get','something.json'); // api is not a function it is a variable function
}
Я считаю, что следующими работы, хотя я не доволен
public function somepage(){
$special_data = get_special_data_from_this_method();
$this->api = api_client($special_data);
$temp = $this->api;
$data = $temp('GET', '/admin/orders.json');
}
Надеется, что это имеет смысл, хотел бы помощь!
Вы пробовали? Это работает? –
Да, я пробовал это, и он не работает. $ This-> api() 'рассматривается как функция, ошибка:' Call to undefined method mycontroller :: api() ' – ThomasReggi
Можете ли вы сделать его статическим? 'public static $ api;' Затем вызывается как 'self :: $ api ('get', 'something');' Или они должны быть специфичными для экземпляра? –