我在嘗試在靜態函數中調用CodeIgniter方法時遇到問題,只是使用$這不起作用,因爲它不在對象上下文中,static關鍵字也不起作用。這是我核心模型中代碼的一個例子,$ table變量是從另一個模型(如posts)成功定義的。通過靜態方法使用CodeIgniter庫
class MY_Model extends CI_Model {
protected static $table;
public function __construct() {
parent::__construct();
}
public static function find_all() {
$this->db->select('*');
$sql = $this->db->get(static::$table);
return $sql->result();
}
}
您使用的PHP版本是否支持該靜態關鍵字? –
我使用5.4版本,所以是的,我認爲支持它。 –
'$ class = get_called_class(); $ sql = $ this-> db-> get($ class :: $ table);'工作? –