• tp连贯操作


     

    链接数据库

    首先写配置文件

    复制concentration.php中的

     
    /* 数据库设置 */
    'DB_TYPE'               =>  '',     // 数据库类型
    'DB_HOST'               =>  ''// 服务器地址
    'DB_NAME'               =>  '',          // 数据库名
    'DB_USER'               =>  '',      // 用户名
    'DB_PWD'                =>  '',          // 密码
    'DB_PORT'               =>  '',        // 端口
    'DB_PREFIX'             =>  '',    // 数据库表前缀
    'DB_PARAMS'             =>  array(), // 数据库连接参数   
    'DB_DEBUG'              =>  TRUE, // 数据库调试模式 开启后可以记录SQL日志
    'DB_FIELDS_CACHE'       =>  true,        // 启用字段缓存

     粘贴到

    Home中的config.php中

     
    <?php
    return array(
        //'配置项'=>'配置值'
            /* 数据库设置 */
        'DB_TYPE'               =>  'mysql',     // 数据库类型
        'DB_HOST'               =>  'localhost'// 服务器地址
        'DB_NAME'               =>  'crud',          // 数据库名
        'DB_USER'               =>  'root',      // 用户名
        'DB_PWD'                =>  '123',          // 密码
        'DB_PORT'               =>  '',        // 端口
        'DB_PREFIX'             =>  '',    // 数据库表前缀
        'DB_PARAMS'             =>  array(), // 数据库连接参数   
        'DB_DEBUG'              =>  TRUE, // 数据库调试模式 开启后可以记录SQL日志
        'DB_FIELDS_CACHE'       =>  true,        // 启用字段缓存
    );

     新建模块

     
    <?php<br>namespace HomeModel;<br>use ThinkModel;<br>class InfoModel extends Model{<br>    public function login(){<br>        <br>    }<br>}

     打开

    直接实例化info表

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $info newHomeModelInfoModel();
            var_dump($info);
        }  
    }

     部分截图

     实例化模型对象的两种方法。D();和M();方法

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            //$info = newHomeModelInfoModel();
            //var_dump($info);
            $n = D("nation");
            var_dump($n);
        }  
    }

     

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            //$info = newHomeModelInfoModel();
            //var_dump($info);
            //$n = D("nation");
            //var_dump($n);
            $n = M("nation");
            var_dump($n);
        }  
    }

     结果一样和D方法不一样的就是M方法没有表名。M方法用来造父类对象。D方法相当于NEW的简写

     操作数据库

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db->select();
            var_dump($arr);
            //返回二维数组
        }  
    }

     

     
    <?php<br>namespace HomeController;<br>use ThinkController;<br>class LoginController extends Controller{<br>    public function login(){<br>        $db = D("Nation");<br>        $arr $db->select("n001");<br>        var_dump($arr);<br>        //select()中不给参数就是查所有,给参数就查相应参数的内容<br>        //参数只能是主键,可以是多个参数<br>        //返回二维数组<br>    }    <br>}

     

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db->find("n001");
            var_dump($arr);
            //可以查一条
            //返回一维数组
        }  
    }

     

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                ->where("Name like '%人%'")//条件。多个条件可以用and或者or   也可以多写一个where()
                ->select();
                 
            var_dump($arr);
     
        }  
    }

     

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                //->where("Name like '%人%'")//条件
                ->table("Info")//临时切换表格
                ->select();
                 
            var_dump($arr);
     
        }  
    }
     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                //->where("Name like '%人%'")//条件
                //->table("Info")//临时切换表格
                ->field("Name")//取字段,可以用逗号隔开取多个
                ->select();
                 
            var_dump($arr);
     
        }  
    }
     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                //->where("Name like '%人%'")//条件
                //->table("Info")//临时切换表格
                //->field("Name")//取字段,可以用逗号隔开取多个
                //->order()//根据条件排序。默认升序
                //->limit("2,5")//跳过2条取5条。一个参数是取前几条
                //->page("2,5")//第二页显示五条
                //->group()//分组
                //->distinct()//去重
                //->field()//根据这个条件去重
                ->lock(true)//自己在处理是把表格锁死,别人没法用
                ->select();
                 
            var_dump($arr);
     
        }  
    }

     聚合函数

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                //->count();//个数
                //->sum();求和()中写根据哪列
                //->avg();求平均值
                 
            var_dump($arr);
     
        }  
    }

     分组查询

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                ->table("car")//临时切换表格
                ->group("brand")//分组
                ->field("brand,AVG(price)")
                ->select();
     
                 
            var_dump($arr);
     
        }  
    }

     

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db
                ->field("Info.Code as Code,Info.Name as Name,Nation.Name as nation")
                ->join("Info on Info.Nation=Nation.Code")
                //如果列名重复就不能这么写
                ->select();
                 
            var_dump($arr);
     
        }  
    }

     

     
    <?php
    namespace HomeController;
    use ThinkController;
    class LoginController extends Controller{
        public function login(){
            $db = D("Nation");
            $arr $db->query("select * from nation");//支持原生的sql语句  
            var_dump($arr);
     
        }  
    }
  • 相关阅读:
    antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中
    你不知道的arguments
    js触发复制、粘贴,设置和读取剪切板的数据
    vue父组件data改变触发子组件prop值变化
    关于英语的unless
    PHP闭包调用外部参数使用范例
    全国省市区数据库数据,以及可视化echarts相关geoJson数据
    PHP开发环境搭建&mdash;phpstudy+eclipse+php development tool+xdebug+composer
    LBS——实现附近功能的几种方案浅谈
    好文共赏
  • 原文地址:https://www.cnblogs.com/palpitate/p/8571528.html
Copyright © 2020-2023  润新知