为了账号安全,请及时绑定邮箱和手机立即绑定

实例化其他公共模型类

thinkPHP3.2.1版本

<?php// userModel.class.php 

class userModel extends CommonModel{

  public function user(){

return 'hello world';

  }

}

?>

<?php  //CommonModel.class.php 

class CommonModel extends Model{

  public function strmake($str){

     return md5($str);

  }

}

//Controller中

$user=D('user');

echo $user->strmake('abcabcabc');

错误如下:

Think\Model:strmake方法不存在!


正在回答

2 回答

D方法是如果你有相应的模型 那么就会优先实例化你相应模型下的方法  如果没有 那么系统自动实例化数据库的表

0 回复 有任何疑惑可以回复我~

<?php

namespace Home\Model;

use Think\Model;

class userModel extends CommonModel{

  public function user(){

return 'hello world';

  }

}

?>

实例化:

 $user = new \Home\Model\userModel();

 echo $user->strmake('bbbb');

不知道如何使用D()方法,M()方法:它们默认的是继承Think\Model类.

0 回复 有任何疑惑可以回复我~
#1

RRadix

我也遇到这个问题 我已经解决了 ThinkPHP3.2.3手册中模型定义一块说明 UserModel 对应数据表 user 所以你的自定义模型命名首字母一定要大写
2016-03-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
快速入门ThinkPHP框架—理论篇
  • 参与学习       89139    人
  • 解答问题       562    个

快速入门ThinkPHP框架教程,掌握ThinkPHP的理论基础

进入课程

实例化其他公共模型类

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信