in-codeigniter在不在对象上下文中时使用$this

anhgbhbe  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(366)
<?php
 class Token {
 private $CI;

 function __construct($param) {
   $this->CI =& get_instance();
   if($param['flag'] == 1) {
     $this->retrieveToken();
     $this->validateToken();
   }
}

public static function getAuthUserToken($empID) {
   $class = $this->CI->db->query('select * from tbl_emp where emp_id ='.$empID);
   $class = $class->result_array();
   print_r($class);
  }
}
?>

我正在codeigniter中创建自定义库,但当我尝试对数据库执行任何操作时,会收到上面的错误消息
我还在autoload.php文件中加载了数据库

$autoload['libraries'] = array('database');
l2osamch

l2osamch1#

这是你的静态方法 getAuthUserToken($empID) 这是导致错误的原因。
正如它在php文档中所说的关键字static
因为静态方法在没有创建对象示例的情况下是可调用的,所以伪变量$this在声明为static的方法中不可用。

相关问题