连接数据库

  1. ThinkPHP采用内置抽象层将不同的数据库操作进行封装处理;
  2. 数据抽象层基于PDO模式,无须针对不同的数据库编写相应的代码;
  3. 使用数据库的第一步,就是连接你的数据库;
  4. 在根目录的config下的database.php可以设置数据库连接信息;
  5. 大部分系统已经给了默认值,需要修改和填写需要的值即可

image.png

  1. type属性默认支持的数据库有:mysql,sqlite,pgsql,sqlsrv;
  2. 还有其它很多连接的细节和方式,需要在具体问题中或项目才能更好理解;
  3. 比如:字符串连接dsn、多模块、动态连接等,这里都暂略;
  4. 配置完数据库,我们使用如下代码,在控制器端输出mysql里的数据;

    1. public function getNoMOdelData(){
    2. // $data = Db::table('tp_user')->select();
    3. $data = Db::name('tp_user')->select();
    4. return json($data);
    5. }

    模型定义

  5. 在MVC中,我们已经使用过Controller(C),View(V),剩下一个就是Model(M);

  6. Model即模型,就是处理和配置数据库的相关信息;
  7. 在项目应用根目录创建model文件夹,并且创建User.php; ```php <?php namespace app\Model; use think\Model;

class User extends Model { } ?>

  1. 4. 当创建了User模型了,控制器端可以这么写:
  2. ```php
  3. public function getModelData(){
  4. $data = User::select();
  5. return json($data);
  6. }
  1. 而此时,命名空间会自动导入User模型:use app\model\User;
  2. 很多时候,我们需要调试SQL是否正确,建议打开Trace,可以查看原生SQL;
    1. // 应用Trace
    2. 'app_trace' => true,