tp5的模型必须放在common目录下吗

 我来答
匿名用户
2017-05-12
展开全部
目录结构(主要三个文件)
1.application\index\controller\index.php
2.application\index\model\UserModel.php
3.application\common.php

文件类容
1.application\index\controller\index.php
控制器,和之前没什么变化,命名空间比较好用了,要注意命名空间
<?php
namespace app\index\controller;
use think\Controller;
use app\index\model\UserModel;
class Login extends Base
{
public function index()
{
$User_model = new UserModel(); // 实例化用户模型
$userdatas = $User_model->getAllUserDatas(); // 获取数据
var_dump($userdatas);
}
}
复制代码
2.application\index\model\UserModel.php
模型,我将数据库链接也放到这里
<?php
namespace app\index\model;
use think\Model;
\think\Loader::controller('common/member', 'event'); // 加载common.php的函数
class UserModel extends Model
{
// 设置当前模型对应的完整数据表名称
protected $table = 'user';
// 设置当前模型的数据库连接
protected $connection = [
// 数据库类型
'type' => 'mysql',
// 数据库连接DSN配置
'dsn' => '',
// 服务器地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'mydb',
// 数据库用户名
'username' => 'root',
// 数据库密码
'password' => '123',
// 数据库连接端口
'hostport' => '3306',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => '',
];

// 获取所有用户的所有数据
public function getAllUserDatas()
{
$more_datas = $this->select(); // 查询所有用户的所有字段资料
if (empty($more_datas)) { // 判断是否出错
return false;
}
return tp5ModelTransfer($more_datas); // 返回修改后的数据
}
}
复制代码
3.application\common.php
公共函数文件,放置这个转换功能的,主要代码,其实就一点点
<?php
// 应用公共文件
function tp5ModelTransfer($array)
{
if (empty($array) || !count($array)) {
return false;
}
foreach ($array as $value) {
$datarray[] = $value->toArray();
}
return $datarray;
}
学者方舟
2018-01-14 · 超过21用户采纳过TA的回答
知道答主
回答量:79
采纳率:53%
帮助的人:13.5万
展开全部
不一定要放在common目录下,主要是看你使用的命名空间;
例如use app\common\model\User; 这个就放在common目录下
use app\admin\model\User;这个就在admin目录下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式