您现在的位置是:网站首页>软件开发>语言基础>PHPPHP
Using $this when not in object context错误原因及解决办法
风口下的猪2020-07-20【PHP】
简介
错题症状
错误代码1:
//thinkphp 模型类 class StudentCharge extends Model { public static function getCharges($id) { $charges = $this->where('major_id',$student->major_id)->select(); return $charges; } } //调用 $charges = StudentCharge::getCharges($student->id);
以上代码就会报Using $this when not in object context错误。
错题分析
在php中出现Using $this when not in object context的原因是在静态方法中使用$this或者直接调用非静态的方法。
错题解决方案
解决办法1:在静态方法中使用self::来代替$this->,将上面代码的第5行修改为下面内容即可。
$charges = self::where('major_id',$student->major_id)->select();
解决办法2:实例化类后再调用该方法,将上面的调用代码修改为下面方式即可。
$sc = new StudentCharge; $charges = $sc->getCharges($student->id);
很赞哦! (0)
/ponder/index.php/index/catelist/catelist/cateid/10.html
相关阅读 (同一栏目)
- 解决 json_encode 格式化的数据出现反斜杠的问题
- .php?q=和&sid=是用来干什么
- $this
- exit() 函数
- PHP魔术方法集—-__construct()
- ::作用域运算符
- ::与new实例化的区别
- PHP中this,self,parent的区别
- 实例化和初始化的区别
- PHP Session
- PHP Cookie
- echo()、halt()、dump()、print()、print_r()的区别
- array_push()数据时,使用其返回值
- 如何更改WAMPServer默认配置之更改MySql默认ROOT帐号的密码
- 关于php集成环境mysql wamp 修改密码后phpMyAdmin拒绝访问解决办法
- Wamp如何设置访问域名,即除了localhost,通过其他字符串访问127.0.0.1
- Windows下安装Composer的详细教程
- Composer使用–下载第三方扩展库
- 实例化php类的时候如何传参
- PHP声明带有默认值的参数方法,调用时传参问题
- protected、private、public的区别
- super()和this()
- 携带token要先设置后端header的Access-Control-Allow-Headers
- Using $this when not in object context错误原因及解决办法
- BOM (byte order mark)
- windows系统下 命令行 php --version 的版本与phpinfo()版本不一致问题
- 在本地没问题,在线上项目显示控制器找不到
- 运行composer 报错:PHP Deprecated: Directive 'track_errors' is deprecated in Unknown on line 0
- Composer安装遇到fileinfo问题,提示Install or enable PHP's fileinfo extension
- PHP 的 ::class 用法
- PHP – 如何使用 bcsub() 函数从另一个中减去一个任意精度数?
- fastAdmin本地安装插件避坑
- fastAdmin的避坑
栏目目录
标签云
站点信息
- 文章统计:528篇
- 移动端访问:扫码进入SQ3R
