zoukankan      html  css  js  c++  java
  • 数据库与模型

    一.连接数据库

    1.ThinkPHP 采用内置抽象层将不同的数据库操作进行封装处理;
    2.数据抽象层基于 PDO 模式,无须针对不同的数据库编写相应的代码;
    3.使用数据库的第一步,就是连接你的数据库;
    4.在根目录的 config 下的 database.php 可以设置数据库连接信息;
    5.大部分系统已经给了默认值,你只需要修改和填写需要的值即可;
    6.type 属性默认支持的数据库有:mysql、sqlite、pgsql、sqlsrv;
    7.还有其它很多连接的细节和方式,需要在具体问题中或项目才能更好理解;
    8.比如:字符串连接 dsn、多模块、动态连接等,这里都暂略;
    9.配置完数据库,我们使用如下代码,在控制器端输出 mysql 里的数据;
        public function show(){
            //调用Db::table方法并使用select查询,注意table方法,表名要写全不带前缀的
           $date=Db::table('article')->select();
           return json($date);
        }

    二.模型定义

    1.在 MVC 中,我们已经使用过 Controller(C),View(V),剩下一个就是 Model(M);
    2.Model 即模型,就是处理和配置数据库的相关信息;
    3.在项目应用根目录创建 model 文件夹,并且创建 User.php; 

    Model创建

    <?php 
    namespace applicationmodel;
    
    use thinkModel;
    
    class Article extends Model{
    
    
    }

    Controller代码

    <?php 
    namespace applicationcontroller;
    
    use applicationModelArticle;
    
    class TestOut {
        public function _empty($name){
            echo "你访问的控制之不存在".$name;
        }
        public function show(){
            $date=Article::select();
           return json($date);
        }
    }
    5.而此时,命名空间会自动导入 User 模型:use appmodelUser;
    6.很多时候,我们需要调试 SQL 是否正确,建议打开 Trace,可以查看原生 SQL;
    // 应用 Trace
    'app_trace'=> true,
     
  • 相关阅读:
    搭建redis sentinel 和 cluster
    ASP.NET WebForm Ajax请求Handler的经验
    ASP.NET WebForm Identity使用
    Github Pages 无法调用 node_modules 文件夹的解决方案
    聊聊手机之--小米6
    boostrap-非常好用但是容易让人忽略的地方【7】:list-unstyled list-inline
    boostrap-非常好用但是容易让人忽略的地方【6】:role属性
    monaco-editor使用
    关于oppo和vivo这两年强势崛起的反思
    Build 2017(简体中文视频)
  • 原文地址:https://www.cnblogs.com/xiaowie/p/15180643.html
Copyright © 2011-2022 走看看