ThinkPHP5数据库实例详解

浏览21089
更新时间2022-01-20

二、Db类的静态方法connect()

  • 创建一张数据表:tp5_staff (命名规则:数据库名 _ 表名)

    • 表中内容如下:

  • 静态方法:指不需要实例化对象,直接用类调用的方法;

  • 功能:完成数据库初始化,并取得数据库实例;

  • 备注:该方法为静态方法,可被该类所有实例(对象)所共享;

  • 该方法,根据参数不同,有二种实现方案:

1、数组作为参数

  • 我们现在工作在:app/index/controller/Index 控制器的index方法;

  • 文件位置:/application/index/controller/Index.php;

  • 控制器Index文件内容:

<?php
namespace app\index\controller;
use think\Db;
use think\Debug;

class Index{
    public function index(){     

    //设置数据库配置参数数组
    $dbConfig = [ 
        // 数据库类型 
        'type' => 'mysql', 
        // 数据库连接DSN配置 
        'dsn' => '', 
        // 服务器地址 
        'hostname' => 'localhost', 
        // 数据库名 
        'database' => 'tp5', 
        // 数据库用户名 
        'username' => 'root', 
        // 数据库密码 
        'password' => 'root', 
        // 数据库连接端口 
        'hostport' => '3306', 
        // 数据库连接参数 
        'params' => [], 
        // 数据库编码默认采用utf8 
        'charset' => 'utf8', 
        // 数据库表前缀 
        'prefix' => 'tp5_',
    ];

    //将配置数组做为connect()的参数传入
    $result=Db::connect($dbConfig)   //创建数据库连接
          ->table('tp5_staff')     //选择数据表
          ->select();                //输出结果集

    //以二维数据方式返回结果集      
    Debug::dump($result);
    }
}

2、字符串做为参数

  • 基本格式:数据库类型://用户名:密码@数据库地址:数据库端口/数据库名#字符集
  • 文件位置:/application/index/controller/Index.php
  • 控制器Index文件内容:
<?php
namespace app\index\controller;
use think\Db;
use think\Debug;

class Index{
    public function index(){     

    //数据库连接配置字符串
    $dbConfig = 'mysql://root:root@localhost:3306/tp5#utf8';

    //将配置字符串做为connect()的参数传入
    $result=Db::connect($dbConfig)   //创建数据库连接
          ->table('tp5_staff')       //选择数据表
          ->select();                //输出结果集

    //以二维数据方式返回结果集
    Debug::dump($result);
    }
}
  • 以上二种参数传入connect()方法后,查询结果是完全一样的:

总结:

1、数组方式配置:可以设置更多的信息,如表前缀等;
2、字符串方式配置:只可设置必须的连接信息,简洁、灵活。

相关视频

更多

免费

php8,我来也
初级php8,我来也

34万次学习

收藏

免费

Thinkphp6.0正式版视频教程
中级Thinkphp6.0正式版视频教程

39.6万次学习

收藏

免费

细说PHP第一季
中级细说PHP第一季

31万次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

65万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

41.3万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

76.7万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

64.1万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

24.4万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

36.2万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

133.2万人学习

热门下载

更多
phpStudy 2018最新版
phpStudy 2018最新版

集成PHP7,16种组合,超全大合集

下载

VC9 32位
VC9 32位

VC9 32位 phpstudy集成安装环境运行库

下载

VC11 32位
VC11 32位

VC11 32位 phpstudy集成安装环境运行库​

下载

php程序员工具箱完整版
php程序员工具箱完整版

程序员工具箱 v1.0 php集成环境

下载

VC14 32位
VC14 32位

VC14 32位 phpstudy安装环境运行库

下载

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

下载

Notepad++ Windows版
Notepad++ Windows版

Notepad++ 8.9.7 Windows版官方安装包,适合 Windows 用户进行代码编辑、文本处理、语法高亮和插件扩展配置。

下载