我一直在 CodeIgniter 框架中做一些 PHP。我创建了自己的模型类,它扩展并覆盖了默认的代码点火器。就在下面:
<?php
class MY_Model extends CI_Model
{
public $table;
public function __construct()
{
parent::__construct();
$this->table = get_class($this);
$this->fields = $this->db->field_data($this->table);
}
}
然后我制作了一个模型来管理数据库中的语言,代码如下。如果我回显,则从$this->table
Language_model 中得到“Language_model”,这就是我想要的。$this->db->field_data($this->table)
但是由于表名无效(“MY_Model”无效),父运行“”中的代码错误。由于错误,该代码甚至从未在孩子中执行 var_dump 。为什么 " $this->db->field_data($this->table)
" 也不使用 "Language_model" 作为$this->table?
Running PHP 5.3.9的值
class Language_model extends MY_Model {
function __construct()
{
parent::__construct();
var_dump($this->fields);
}
}