thinkphp model不能使用$this方法

 Thinkphp   高蒙   阅读(2778)   评论(0)   2016-06-18 11:25:47    thinkphp model不能使用$this方法 


在开发中遇到很奇怪的问题,就是我用D()方法去继承Model的时候,总是使用不到里面的方法。参数怎么传递,都是无效的。

控制器

indexController.class.php


namespace Admin\Controller;
use Think\Controller;
class MemberController extends Controller
{
    public function index()
    {
        $w['status'] = 3;
        D('member')->getList($w);
    }
}

模型

indexModel.class.php


namespace Admin\Model;
use Think\Model;
class MemberModel extends Model
{
    protected $fields = 'id,name,email';
    public function getList($d)
    {
        $this->where($d)->select();
    }
}


这样看起来是不是一点没毛病啊,但是,当我用$this->_sql();打印出执行的sql语句的时候,就会发


现,这里的where(),没有起到作用,意思就是说没有使用到Model里面的方法。

在这里我就很奇怪了,这是为什么呢?

于是,我就去查看Model类。

通过比对发现,我这里用$fields,把Model里面定义的值覆盖了。所以说,我们要把上面自定义的属性


给重新的命名下,就可以了。





相关文章



我要评论


站长昵称:(*)

输入内容:


评论列表


高蒙

男,程序猿一枚

 

人生要是没有理想, 那跟一条咸鱼有什么分别。


关于我

  http://www.shuchengxian.com

高蒙个人博客是以PHP技术为主的程序员个人博客。博客主要发布php开发中遇到的问题以及解决办法,同时个人博客也分享网站模板素材,jquery插件等方面素材。


站点声明:相关侵权、举报、投诉及建议等,请发E-mail:936594075#qq.com(#替换成@)。

Copyright © 2018, www.shuchengxian.com, All rights reserved. 个人博客皖公网安备 34152302000022号 皖ICP备15015490号

关键词:个人博客,PHP博客,PHP博客程序,高蒙博客,高蒙个人博客,php程序员博客,程序员个人博客