Thinkphp5框架实现获取数据库数据到视图的方法

作者:zhensg 时间:2024-05-03 15:52:16 

本文实例讲述了Thinkphp5框架实现获取数据库数据到视图的方法。分享给大家供大家参考,具体如下:

这是学习thinkhp5的基础篇笔记。

这里主要讲怎么配置数据库链接,以及查询数据库数据,并且最后将数据赋给视图。

数据库配置:

thinkphp5的数据库配置默认在conf下的database.php下面。我的数据库配置项目如下


<?php
return [
   // 数据库类型
   'type'      => 'mysql',
   // 数据库连接DSN配置
   'dsn'       => '',
   // 服务器地址
   'hostname'    => '127.0.0.1',
   // 数据库名
   'database'    => 'course',
   // 数据库用户名
   'username'    => 'root',
   // 数据库密码
   'password'    => '',
   // 数据库连接端口
   'hostport'    => '3306',
   // 数据库连接参数
   'params'     => [],
   // 数据库编码默认采用utf8
   'charset'     => 'utf8',
   // 数据库表前缀
   'prefix'     => 'imooc_',
   // 数据库调试模式
   'debug'      => false,
   // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
   'deploy'     => 0,
   // 数据库读写是否分离 主从式有效
   'rw_separate'   => false,
   // 读写分离后 主服务器数量
   'master_num'   => 1,
   // 指定从服务器序号
   'slave_no'    => '',
   // 是否严格检查字段是否存在
   'fields_strict'  => true,
   // 数据集返回类型
   'resultset_type' => 'array',
   // 自动写入时间戳字段
   'auto_timestamp' => false,
   // 时间字段取出后的默认时间格式
   'datetime_format' => 'Y-m-d H:i:s',
   // 是否需要进行SQL性能分析
   'sql_explain'   => false,
   // Builder类
   'builder'     => '',
   // Query类
   'query'      => '\\think\\db\\Query',
];

主要配置的项目是数据库服务器地址hostname,数据库名database,数据库用户名username和数据库密码password,还有一个表前缀prefix。配置之后就可以使用tp5的查询语句查询数据库了。

查询数据库数据阶段,使用了tp5的模型类,这样就可以直接利用tp5自带的数据库查询方法,下面是model代码


<?php
namespace app\index\model;
use think\Model;
class Course extends Model{
}

然后将model代码引入到控制器的方法内,使用即可,使用代码如下,使用之前要引入哦


<?php
namespace app\index\controller;
use think\Controller;
use app\index\model\Course;
//use think\Loader;
class Index extends Controller
{
 public function index()
 {
    $res=Course::get(2)->toArray();
    /*return view("index",[
      "email"=>"123456@163.com"
    ]);*/
    return view("index",$res);
}

这样就可以了,哈哈;很多没有交代清楚的地方好像。tp5操作数据库可以有2种方法,具体又分3种方法,两种是使用Db类和继承数据库模型;三种是Db下可以使用tp的查询也可以使用原生的查询。

需要注意的是,find和select是查询构造器的方法,get和all是模型的方法。但模型又是基于查询构造器的,所以模型可以调用find和select方法,但是查询构造器不能调用get和all方法。

如果利用Db类的话,上面实现的方式变为


<?php
namespace app\index\controller;
use think\Db;
use think\Controller;
//use think\Loader;
class Index extends Controller
{
 public function index()
 {
    $res=Db::table("imooc_course")
    ->find(2);
    /*return view("index",[
      "email"=>"123456@163.com"
    ]);*/
    return view("index",$res);
}

注意的是find方法返回的直接是数组形式了,而不需要再进行数组转化。

关于tp5操控数据库有很多方法,这里只是记录下查询数据库的基本操作实现。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

来源:https://www.cnblogs.com/zhensg123/p/8805934.html

标签:Thinkphp5,数据,视图
0
投稿

猜你喜欢

  • 基于原生JavaScript实现SPA单页应用

    2024-04-30 09:59:43
  • CSS 那些事儿

    2008-12-02 18:19:00
  • Python中使用items()方法返回字典元素对的教程

    2023-11-20 13:07:09
  • Python判断变量是否已经定义的方法

    2023-08-01 07:14:01
  • 懒人必备Python代码之自动发送邮件

    2022-08-31 20:17:41
  • 简单仿LightBox效果

    2008-09-19 21:35:00
  • Python中的枚举函数enumerate()的具体用法

    2022-06-03 13:33:31
  • 8种常用的Python工具

    2023-03-28 10:49:49
  • Python实现邮件发送功能的示例详解

    2022-08-18 13:15:43
  • Python使用MapReduce编程模型统计销量

    2021-07-16 14:24:43
  • Java实现数据库连接池简易教程

    2024-01-20 01:30:29
  • python模拟点击在ios中实现的实例讲解

    2021-11-28 13:03:34
  • 不需要用到正则的Python文本解析库parse

    2022-11-08 17:28:09
  • 基于vue打包后字体和图片资源失效问题的解决方法

    2024-05-05 09:12:13
  • MySQL的中文UTF8乱码问题

    2024-01-15 01:00:38
  • php for 循环语句使用方法详细说明

    2023-11-17 21:43:21
  • SQL中的left join right join

    2024-01-16 13:35:36
  • Access数据库安全问答

    2007-08-23 15:28:00
  • 在Python程序中操作MySQL的基本方法

    2024-01-20 18:30:46
  • .NET5控制台程序使用EF连接MYSQL数据库的方法

    2024-01-25 08:07:43
  • asp之家 网络编程 m.aspxhome.com