Tôi rất vui vì có một vấn đề về phạm vi biến. Có lẽ tôi chỉ cần cà phê thêm ...PHP/CodeIgniter - Thiết lập các biến trong __construct(), nhưng chúng không thể truy cập được từ các hàm khác
Dưới đây là của tôi (giản thể) mã - đây là trong CodeIgniter 2:
class Agent extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('agent_model');
// Get preliminary data that will be often-used in Agent functions
$user = $this->my_auth_library->get_user();
$agent = $this->agent_model->get_agent($user->id);
}
public function index()
{
$this->template->set('info', $this->agent_model->get_info($agent->id));
$this->template->build('agent/welcome');
}
Thật không may, khi tôi chạy chức năng chỉ số, tôi nói:
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: agent
Filename: controllers/agent.php
Line Number: 51
Dòng 51 là dòng đầu tiên của hàm chỉ mục. Có chuyện gì vậy? Đây có phải là vấn đề về phạm vi hay thứ gì khác không?
Cảm ơn!
Bạn sẽ không thiết lập bất kỳ biến lớp, chỉ có chức năng biến. Xem http://www.php.net/manual/en/language.oop5.properties.php – hakre