在 php 中出现 Using $this when not in object context 的原因是在静态方法中使用$this 或者直接调用非静态的方法。
错误代码 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 错误。
解决办法 1:在静态方法中使用 self::来代替$this->,将上面代码的第 5 行修改为下面内容即可。
$charges = self::where('major_id',$student->major_id)->select();
解决办法 2:实例化类后再调用该方法,将上面的调用代码修改为下面方式即可。
$sc = new StudentCharge; $charges = $sc->getCharges($student->id);
声明:1、本博客不从事任何主机及服务器租赁业务,不参与任何交易,也绝非中介。博客内容仅记录博主个人感兴趣的服务器测评结果及一些服务器相关的优惠活动,信息均摘自网络或来自服务商主动提供;所以对本博客提及的内容不作直接、间接、法定、约定的保证,博客内容也不具备任何参考价值及引导作用,访问者需自行甄别。2、访问本博客请务必遵守有关互联网的相关法律、规定与规则;不能利用本博客所提及的内容从事任何违法、违规操作;否则造成的一切后果由访问者自行承担。3、未成年人及不能独立承担法律责任的个人及群体请勿访问本博客。4、一旦您访问本博客,即表示您已经知晓并接受了以上声明通告。
你可能也喜欢
- ♥ javascript 删除字符串的最后一个字符08/26
- ♥ 【疯狂猜成语/图猜成语】一个人抱着一袋金子在骂另一个人是什么成语?08/19
- ♥ (1054) Unknown column 'conuintoken' in 'field list'08/31
- ♥ DedeCMS 中 dede:channel 标签调用栏目简介 description 及关键词 keywords 的方法08/31
- ♥ JQuery 中 serialize 方法不提交隐藏元素08/27
- ♥ Laravel 报错 Call to undefined function IlluminateEncryptionopenssl_cipher_iv_length()08/24







