zoukankan      html  css  js  c++  java
  • ThinkPHP之数据库操作

    Model文件位置


     

    ThinkPHP使用的是MVC架构,所以我们我们在操作数据库时,首先需要创建自己的Model类。

    在每个模块下有个Model文件夹,我们可以将Model类放置在该文件夹下。如果多个模块需要使用同一的Model,则可以选择在项目的下创建Model文件夹来存放Model

    配置数据库


    在使用Model类来操作数据时,应先把数据库配置好。在每个模块下有个Conf/config.php文件,我们可以在里面配置数据库。

    数据库配置

    <?php
    return array(
        //'配置项'=>'配置值'
        'SHOW_PAGE_TRACE'=>true,
        'MODULE_ALLOW_LIST'   =>    array('Home','Admin','Public'),
        'MODULE_DENY_LIST'    =>  array('Common','Runtime'),
        'DB_TYPE'   => 'mysql', // 数据库类型
        'DB_HOST'   => '127.0.0.1', // 服务器地址
        'DB_NAME'   => 'weibo', // 数据库名
        'DB_USER'   => 'root', // 用户名
        'DB_PWD'    => 'admin', // 密码
    );

    定义Model类


     

    一个Model类对应一张表,这里操作user表,所以我们的文件名应命名为UserModel.class.php。

    <?php
    /**
     * Created by PhpStorm.
     * User: Administrator
     * Date: 2016/6/20
     * Time: 10:34
     */
    
    namespace HomeModel;
    use ThinkModel;
    
    //父类Model Thinkphp/Think/library/Model.class/php
    class UserModel extends Model{
    
    }

    如果我们不想这样写则可以在UserModel中直接指定表名

    <?php
    /**
     * Created by PhpStorm.
     * User: Administrator
     * Date: 2016/6/20
     * Time: 10:34
     */
    
    namespace HomeModel;
    use ThinkModel;
    
    //父类Model Thinkphp/Think/library/Model.class/php
    class UserModel extends Model{
        //该属性继承自Model类
        protected  $trueTableName = 'user';
    }

    控制器中实例化Model类


    • 普通方式
    <?php
    /**
     * Created by PhpStorm.
     * User: Administrator
     * Date: 2016/6/20
     * Time: 10:39
     */
    
    namespace HomeController;
    use ThinkController;
    
    class UserController {
        public  function showList(){
            $users = new HomeModelUserModel();
            var_dump($users);
        }
    }
    • 快捷方式

    如果在开发中认为没必要去添加自己的Model类,则可以使用系统提供的Model。这个Model类其实就是我们在写自己的Model时,继承的那个Model类。

    <?php
    /**
     * Created by PhpStorm.
     * User: Administrator
     * Date: 2016/6/20
     * Time: 10:39
     */
    
    namespace HomeController;
    use ThinkController;
    
    class UserController {
        public  function showList(){
            $m = M('user');
            var_dump($m);
        }
    }

      $m就是一个model对象了。M函数会根据我们传入的表明来生成相应的Model对象。这里传入的是user字符串,所以$m对象操作的是数据库中的user表。

     

     

  • 相关阅读:
    SURF与SIFT
    CVMAT操作
    flask
    爬虫
    mysql基础
    WINCE6.0_CHS_SDK安装失败
    com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1443 连接到主机 localhost 的 TCP/IP 连接失败。
    office 2010每次打开word都要重新配置的解决方法
    如何使用Visual Studio 2008编译C语言
    Hibernate初学、遇到的问题
  • 原文地址:https://www.cnblogs.com/xidongyu/p/5600650.html
Copyright © 2011-2022 走看看