tp连贯操作

Posted palpitate

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 Home\\Model;<br>use Think\\Model;<br>class InfoModel extends Model{<br>    public function login(){<br>        <br>    }<br>}

 打开

直接实例化info表

 
<?php
namespace Home\\Controller;
use Think\\Controller;
class LoginController extends Controller{
    public function login(){
        $info new\\Home\\Model\\InfoModel();
        var_dump($info);
    }  
}

 部分截图

 

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

 

 
<?php
namespace Home\\Controller;
use Think\\Controller;
class LoginController extends Controller{
    public function login(){
        //$info = new\\Home\\Model\\InfoModel();
        //var_dump($info);
        $n = D("nation");
        var_dump($n);
    }  
}

 

 
<?php
namespace Home\\Controller;
use Think\\Controller;
class LoginController extends Controller{
    public function login(){
        //$info = new\\Home\\Model\\InfoModel();
        //var_dump($info);
        //$n = D("nation");
        //var_dump($n);
        $n = M("nation");
        var_dump($n);
    }  
}

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

 

 操作数据库

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

 

 
<?php<br>namespace Home\\Controller;<br>use Think\\Controller;<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 Home\\Controller;
use Think\\Controller;
class LoginController extends Controller{
    public function login(){
        $db = D("Nation");
        $arr $db->find("n001");
        var_dump($arr);
        //可以查一条
        //返回一维数组
    }  
}

 

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

 

 
<?php
namespace Home\\Controller;
use Think\\Controller;
class LoginController extends Controller{
    public function login(){
        $db = D("Nation");
        $arr $db
            //->where("Name like \'%人%\'")//条件
            ->table("Info")//临时切换表格
            ->select();
             
        var_dump($arr);
 
    }  
}

 

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

 分组查询

 
<?php
namespace Home\\Controller;
use Think\\Controller;
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 Home\\Controller;
use Think\\Controller;
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 Home\\Controller;
use Think\\Controller;
class LoginController extends Controller{
    public function login(){
        $db = D("Nation");
        $arr $db->query("select * from nation");//支持原生的sql语句  
        var_dump($arr);
 
    }  
}

以上是关于tp连贯操作的主要内容,如果未能解决你的问题,请参考以下文章

TP连贯操作

tp框架连贯操作

掌握Thinkphp3.2.0----连贯操作

php的连贯操作

掌握Thinkphp3.2.0----CURD

TP sql语句