我正在为我的项目使用CodeIgniter,并希望将所有访问者信息存储到数据库中。我有一个名为My_Controller的核心控制器,并使用下面的文件:
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class My_Controller extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->model('Tool_model');
$this->Tool_model->save_visitor($this->get_visitor_data());
}
function get_visitor_data(){
$src = $this->agent->is_referral()?explode('/',$this->agent->referrer()):NULL;
$device = $this->agent->is_mobile() ? $this->agent->mobile() : "PC";
$cur_link = uri_string() == NULL ? 'home' : end(explode('/',uri_string()));
$data = array(
'ip' => $this->input->ip_address(),
'src' => $src[2],
'page_link' => $cur_link,
'browser' => $this->agent->browser(),
'browser_ver' => $this->agent->version(),
'os' => $this->agent->platform(),
'device' => $device
);
return $data;
}
}
现在我需要知道,这是一种正确的方式,还是有另一种方法可以更有效地做同样的事情?
感谢。